JS获得URL超链接的参数值


  5122人阅读  评论(0)  收藏  举报
  分类:
[javascript]  view plain  copy
  1. /** 
  2.   * 获取指定URL的参数值 
  3.   * @param url  指定的URL地址 
  4.   * @param name 参数名称 
  5.   * @return 参数值 
  6.   */  
  7.  function getUrlParam(url,name){  
  8.      var pattern = new RegExp("[?&]"+name+"\=([^&]+)""g");  
  9.      var matcher = pattern.exec(url);  
  10.      var items = null;  
  11.      if(null != matcher){  
  12.              try{  
  13.                     items = decodeURIComponent(decodeURIComponent(matcher[1]));  
  14.              }catch(e){  
  15.                      try{  
  16.                              items = decodeURIComponent(matcher[1]);  
  17.                      }catch(e){  
  18.                              items = matcher[1];  
  19.                      }  
  20.              }  
  21.      }  
  22.      return items;  
  23. }  


当前URL:location.href

前一页面的URL:document.referrer

获取当前URL中参数name的值:getUrlParam(location.href,"name");

获取前一页面URL中参数name的值:getUrlParam(document.referrer,"name");

但是这种方式只能获取=后的一个值,如果有这样的URL:aaa.jsp?info=name=1;sex=2,对于这个URL,用上面的方法获取到的info的值是name,而实际上我需要获取到的是name=1;sex=2。

道理都一样,变换一下,用下面的方法:

[javascript]  view plain  copy
  1. /** 
  2.  * 获取当前URL参数值 
  3.  * @param name  参数名称 
  4.  * @return  参数值 
  5.  */  
  6. function getUrlParam(name) {  
  7.        var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)","i");  
  8.        var r = window.location.search.substr(1).match(reg);  
  9.        if (r!=null)   
  10.            return unescape(r[2]);   
  11.        return null;  
  12.          
  13. }  


用这个得到的就是:name=1;sex=2

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值