一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

js获取url中的参数

时间:2011-09-17 编辑:简简单单 来源:一聚教程网

在有些时候我们会要利用js带参数,下面来看看这代码有需要的朋友可以参考。

//lastest:
var getArgs=function() {//get url querystring
    var params=document.location.search,reg=/(?:^?|&)(.*?)=(.*?)(?=&|$)/g,temp,args={};
    while((temp=reg.exec(params))!=null) args[temp[1]]=decodeURIComponent(temp[2]);
    return args;
};
//只取一个:
var queryString=function(key){
    return (document.location.search.match(new RegExp("(?:^\?|&)"+key+"=(.*?)(?=&|$)"))||['',null])[1];
}
var args=getArgs();
alert(args.name+" | "+args.sex+" | "+args.age);
//测试链接:< a href="?name=abc&sex=男&age=12">test getQueryString

//deprecated
var getArgs=function() {
    var params=document.location.search.substr(1),reg=/(?:^|&)(.*?)=(.*?)(?:&|$)/g,temp,args={};
    while((temp=reg.exec(params))!=null) {       
        args[temp[1]]=temp[2];
        reg.lastIndex-=1;//减1,下一次从结束的&开始匹配
    }
    return args;
};
var getArgs=function(){
    var sarg = document.location.search.substr(1),rv={};
    rv.filename = document.location.pathname.replace(/.*//ig,'');
    if(!sarg){return rv;}
    var aarg = sarg.split('&'),atmp=[];
    for(var i=0;i< aarg.length;i++){
        atmp = aarg[i].split('=');
        rv[atmp[0]] = unescape(atmp[1]);
    }
    return rv;
};

热门栏目