JS获取url参数。分开获取根据值KEY,快速简单

Location 对象包含有关当前 URL 的信息。

Location 对象是 Window 对象的一个部分,可通过 window.location 属性来访问。

hash         设置或返回从井号 (#) 开始的 URL(锚)。
host          设置或返回主机名和当前 URL 的端口号。
hostname    设置或返回当前 URL 的主机名。
href           设置或返回完整的 URL。
pathname    设置或返回当前 URL 的路径部分。
port           设置或返回当前 URL 的端口号。
protocol    设置或返回当前 URL 的协议。
search      设置或返回从问号 (?) 开始的 URL(查询部分)。
--------------------- 
采用正则表达式获取地址栏参数:( 强烈推荐,既实用又方便!)
 

function GetQueryString(name)
{
     var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
     var r = window.location.search.substr(1).match(reg);//search,查询?后面的参数,并匹配正则
     if(r!=null)return  unescape(r[2]); return null;
}


 
// 调用方法
alert(GetQueryString("参数名1"));
alert(GetQueryString("参数名2"));
alert(GetQueryString("参数名3"));
下面举一个例子:
 
若地址栏URL为:abc.html?id=123&url=http://www.csdn.com
 
那么,但你用上面的方法去调用:alert(GetQueryString("url"));
 
则会弹出一个对话框:内容就是 http://www.csdn.com
 
如果用:alert(GetQueryString("id"));那么弹出的内容就是 123 啦;
 
当然如果你没有传参数的话,比如你的地址是 abc.html 后面没有参数,那强行输出调用结果有的时候会报错:
 
所以我们要加一个判断 ,判断我们请求的参数是否为空,首先把值赋给一个变量:

var myurl=GetQueryString("url");
if(myurl !=null && myurl.toString().length>1)
{
   alert(GetQueryString("url"));
}

posted @ 2018-12-08 15:31  离。  阅读(86)  评论(0编辑  收藏  举报