javascript 获取当前 URL 参数的两种方法:

来源:互联网 发布:徽章制作软件app 编辑:程序博客网 时间:2024/05/01 15:49

//返回的是字符串形式的参数,例如:class_id=3&id=2&function getUrlArgStr(){    var q=location.search.substr(1);    var qs=q.split('&');    var argStr='';    if(qs){        for(var i=0;i<qs.length;i++){            argStr+=qs[i].substring(0,qs[i].indexOf('='))+'='+qs[i].substring(qs[i].indexOf('=')+1)+'&';        }    }    return argStr;}
//返回的是对象形式的参数function getUrlArgObject(){    var args=new Object();    var query=location.search.substring(1);//获取查询串    var pairs=query.split(",");//在逗号处断开    for(var i=0;i<pairs.length;i++){        var pos=pairs[i].indexOf('=');//查找name=value        if(pos==-1){//如果没有找到就跳过            continue;        }        var argname=pairs[i].substring(0,pos);//提取name        var value=pairs[i].substring(pos+1);//提取value        args[argname]=unescape(value);//存为属性    }    return args;//返回对象}
window.location.host; //返回url 的主机部分,例如:www.xxx.com  window.location.hostname; //返回www.xxx.com  window.location.href; //返回整个url字符串(在浏览器中就是完整的地址栏),例如:www.xxx.com/index.php?class_id=3&id=2  window.location.pathname; //返回/a/index.php或者/index.php  window.location.protocol; //返回url 的协议部分,例如: http:ftp:maito:等等。  window.location.port //url 的端口部分,如果采用默认的80端口,那么返回值并不是默认的80而是空字符


0 0