js获取url传递参数,js获取url?号后面的参数

方法一:正则分析法

[html] view plain copy
 
  1. function getQueryString(name) {  
  2.         var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");  
  3.         var r = window.location.search.substr(1).match(reg);  
  4.         if (r != null) return unescape(r[2]);  
  5.         return null;  
  6.     }  


方法二:

[html] view plain copy
 
  1. <Script language="javascript">   
  2. function GetRequest() {   
  3.    var url = location.search; //获取url中"?"符后的字串   
  4.    var theRequest = new Object();   
  5.    if (url.indexOf("?") != -1) {   
  6.       var str = url.substr(1);   
  7.       strs = str.split("&");   
  8.       for(var i = 0; i strs.length; i ++) {   
  9.          theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);   
  10.       }   
  11.    }   
  12.    return theRequest;   
  13. }   
  14. </script>  

使用方法:

<Script language="javascript">

var Request = new Object();
Request = GetRequest();
var 参数1,参数2,参数3,参数N;
参数1 = Request[''参数1''];
参数2 = Request[''参数2''];
参数3 = Request[''参数3''];
参数N = Request[''参数N''];
</Script>

方法三:

[html] view plain copy
 
  1. /**  
  2.  * 获取指定的URL参数值  
  3.  * URL:http://www.quwan.com/index?name=tyler  
  4.  * 参数:paramName URL参数  
  5.  * 调用方法:getParam("name")  
  6.  * 返回值:tyler  
  7.  */  
  8. function getParam(paramName) {  
  9.     paramValue = "", isFound = !1;  
  10.     if (this.location.search.indexOf("?") == 0 && this.location.search.indexOf("=") > 1) {  
  11.         arrSource = unescape(this.location.search).substring(1, this.location.search.length).split("&"), i = 0;  
  12.         while (i arrSource.length && !isFound) arrSource[i].indexOf("=") > 0 && arrSource[i].split("=")[0].toLowerCase() == paramName.toLowerCase() && (paramValue = arrSource[i].split("=")[1], isFound = !0), i++  
  13.     }  
  14.     return paramValue == "" && (paramValue = null), paramValue  
  15. }  

其他参数获取介绍: 
//设置或获取对象指定的文件名或路径。
alert(window.location.pathname);


//设置或获取整个 URL 为字符串。
alert(window.location.href);


//设置或获取与 URL 关联的端口号码。
alert(window.location.port);




//设置或获取 URL 的协议部分。
alert(window.location.protocol);


//设置或获取 href 属性中在井号“#”后面的分段。
alert(window.location.hash);


//设置或获取 location 或 URL 的 hostname 和 port 号码。
alert(window.location.host);


//设置或获取 href 属性中跟在问号后面的部分。
alert(window.location.search);

原文地址:https://www.cnblogs.com/xiaoleiel/p/8308725.html