您的位置:首页 > Web前端 > javascript > 正文

通过js获取Url的参数值

更多 时间:2013-7-29 类别:Web前端 浏览量:1812

通过js获取Url的参数值

通过js获取Url的参数值

       我们知道在C#中获取Url的参数值,可以通过 Request.QueryString["参数名称"],或者 Request["参数名称"] 获取到,但js中没有这样的方法,不过,我们可以在js中通过正则表达式获取,或者通过js的split方法分离得到参数数组,然后再循环比较获取其指定的参数值。下面讲解一下这两种方式:

       方法一:正则分析法

  •  
  • JScript 代码   复制
  • 
    function getQueryString(name)
    {
        var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
        var r = window.location.search.substr(1).match(reg);
        if (r != null)
            return unescape(r[2]);
        return null;    
    }
     
    //调用方法:
     
    alert(GetQueryString("参数名1"));
    alert(GetQueryString("参数名2"));
    alert(GetQueryString("参数名3"));
    
    		
  •  

          方法二:JS split 分隔成数组,循环匹配

  •  
  •  
  • JScript 代码   复制
  • 
    <script language="javascript">
    
    function GetRequest() {
    
       var url = location.search; //获取url中"?"符后的字串
    
       var theRequest = new Object();
    
       if (url.indexOf("?") != -1) {
    
          var str = url.substr(1);
    
          strs = str.split("&");
    
          for(var i = 0; i < strs.length; i ++) {
    
             theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
    
          }
    
       }
    
       return theRequest;
    
    }
    
    </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>
    			

     

  •  

    标签:js url参数