您的位置:首页 > Web前端 > JavaScript

用JS获取地址栏参数的方法

2017-04-19 21:02 351 查看
方法一:采用正则表达式获取地址栏参数:

<html>
<head>
</head>
<body>
<script type="text/javascript">
alert(GetQueryString("id"));
function GetQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;}
</script>
</body>
</html>


eg:

若地址栏URL为:abc.html?id=123&url=”http://www.csdn.com

那么执行如上代码,就会弹出一个对话框:内容是123.

如果用alert(GetQueryString(“url”));

当然如果你没有参数曹产地的话,则会输出null;

方法二:传统方法

<html>
<body>
<script type="text/javascript">
function UrlSearch()
{
var name,value;
var str=location.href;  //取得整个地址栏
var num=str.indexOf("?");
str=str.substr(num+1); //str得到?之后的字符串

var arr=str.split("&"); //得到&分割的参数,放入数组中
for(var i=0;i<arr.length;i++)
{
num=arr[i].indexOf("=");
if(num>0)
{
name=arr[i].substring(0,num);
value=arr[i].substr(num+1);
this[name]=value;
}
}
}
var Request=new UrlSearch();
alert(Request.id);
alert(location.href);
</script>
</body>
</html>


eg:

访问abc.html?id=1

这个时候就会得到1;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息