JavaScript 获取URL后面的ID

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript 获取URL后面的ID相关的知识,希望对你有一定的参考价值。

如题。有一个页面,比如有一个页面,1.html?id=5,我要用javascript获得这个5这个值,该怎么弄?

<script language="javascript">
function getVal(key)
var url = location.href.split("?");
if(url[1]==null)return "URL中无参数";
var field = url[1].split("&");
for(i=0;i<field.length;i++)
var val = field[i].split("=");
if(val[0]==key)
return val[1];


return "URL中没有传递参数["+key+"]";

alert(getVal("id"));
</script>
帮你写了个函数
如果页面url是 http://localhost:88/123.html?id=123 的话 可以获取到id的值
参考技术A var url=window.location.href;
var index=url.indexOf("&");
var id=url.substring(url.indexOf('?')+4,index== -1 ? url.length:index);

参考资料:http://jsssc.cn

如何用js获取当前url的参数值

http://127.0.0.1/e/action/ShowInfo.php?classid=9&id=2
如何用js获取以上url中classid和id的值?

不太明白用JS获取参数的目的,也许Ajax中能用到吧
<script language = javascript>
function request(paras)
var url = location.href;
var paraString = url.substring(url.indexOf("?")+1,url.length).split("&");
var paraObj =
for (i=0; j=paraString[i]; i++)
paraObj[j.substring(0,j.indexOf("=")).toLowerCase()] = j.substring(j.indexOf("=")+1,j.length);

var returnValue = paraObj[paras.toLowerCase()];
if(typeof(returnValue)=="undefined")
return "";
else
return returnValue;


//如你给出的地址可以这样
var classid = request("classid");
var id = request("id");

//然后你就可以对这些参数处理了
</script>
参考技术A 用js代码在本地分析得到classid和id的值总归是比较麻烦,而作为GET参数,在服务端总是要用到的。
如果你的本地js将用到这两个参数值,你可以直接让服务端将这两个值写入到本地。
<?php
$mystr="<script>x_classid=9;x_id=2</script>"
echo $mystr
?>
这样你在本地就可以直接调用x_classid和x_id以得到这两个参数。
参考技术B var url = "http://127.0.0.1/e/action/ShowInfo.php?classid=9&id=2";
function parse_url(_url)
var pattern = /(\w+)=(\w+)/ig;
var parames = ;
url.replace(pattern, function(a, b, c)
parames[b] = c;
);
return parames;


var parames = parse_url(url);
alert(parames['classid'] + ", " + parames['id']);

//结果 9, 2
参考技术C <script>
function Request(strName)
var strHref = document.location.href;
var intPos = strHref.indexOf("?");
var strRight = strHref.substr(intPos + 1);
var arrTmp = strRight.split("&");
for(var i = 0; i < arrTmp.length; i++ )
var arrTemp = arrTmp[i].split("=");
if(arrTemp[0].toUpperCase() == strName.toUpperCase()) return arrTemp[1];

return 0;


alert("classid值:"+Request("classid")+"id值"+Request("id"))
</script>

以上是关于JavaScript 获取URL后面的ID的主要内容,如果未能解决你的问题,请参考以下文章

有没有开源方法能直接获取url的参数值

javascript获取当前url

javascript如何获取域名?之后的值

javascript中常见的函数封装 :判断是否是手机,判断是否是微信,获取url地址?后面的具体参数值,毫秒格式化时间,手机端pxrem尺寸转换等

javaScript获取url中的参数

如何用 JavaScript 给当前网页中的所有链接后面添加随机数