运用Javascript获取url传递参数之方法

一、正则分析法。(我较喜欢使用正则)

代码如下:

  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 (r[2]); return null;
  5. }
  6. alert(GetQueryString(“参数名1”));
  7. alert(GetQueryString(“参数名2”));
  8. alert(GetQueryString(“参数名3”));

二、函数:

看下代码:

  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]]=(strs[i].split("=")[1]);
  10.       }
  11.    }
  12.    return theRequest;
  13. }
  14. </script>

然后我们通过调用此函数获取对应参数值:

  1. <script language=”javascript”>
  2.     var Request = new Object();
  3.     Request = GetRequest();
  4.     var 参数1,参数2,参数3,参数N;
  5.     参数1 = Request[”参数1”];
  6.     参数2 = Request[”参数2”];
  7.     参数3 = Request[”参数3”];
  8.     参数= Request[”参数N”];
  9. </script>

以此获取url串中所带的同名参数,其他参数获取介绍:

//设置或获取对象指定的文件名或路径。
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);

 

posted @ 2020-08-18 13:20  风吹麦浪打  阅读(559)  评论(0)    收藏  举报