js获取地址栏参数
2017-09-18 14:23 陌路尽微凉 阅读(154) 评论(0) 收藏 举报方法一:采用正则表达式获取
function GetQueryString(name)
{
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if(r!=null)return unescape(r[2]); return null;
}
要什么参数直接GetQueryString("参数名")即可得到;
但是url后面没有参数时比如为./html结尾时,你再想获取id参数,就会报错,所以还得加个判断
var myUrl=GetQueryString("url");
if(myUrl !=null && myUrl.toString().length>1)
{
alert(GetQueryString("url"));
}
方法二:window.location.search
window.location.search获取url后面的参数部分
比如url="http://www.maidq.com/index.html?ver=1.0&id=6#imhere";
返回的结果为:str="?ver=1.0&id=6"
再将返回的结果裁剪或者转化数组
str.slice(1,str.length).split("&");
这样就返回一个数组,arr=["ver=1.0","id=6"],
for(var i=0;i<arr.length;i++){
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);
obj[name]=value;
}
}
}
console.log(obj);
这样所有的url参数值即url中”?“到”#“前面的内容都在obj中以key:value的形式保存起来;
浙公网安备 33010602011771号