首页 > 代码库 > js获得URL超链接的参数值
js获得URL超链接的参数值
/** * 获取指定URL的参数值 * @param url 指定的URL地址 * @param name 参数名称 * @return 参数值 */ function getUrlParam(url,name){ var pattern = new RegExp("[?&]"+name+"\=([^&]+)", "g"); var matcher = pattern.exec(url); var items = null; if(null != matcher){ try{ items = decodeURIComponent(decodeURIComponent(matcher[1])); }catch(e){ try{ items = decodeURIComponent(matcher[1]); }catch(e){ items = matcher[1]; } } } return items;}
当前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。
道理都一样,变换一下,用下面的方法:
/** * 获取当前URL参数值 * @param name 参数名称 * @return 参数值 */function getUrlParam(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; }
用这个得到的就是:name=1;sex=2
js获得URL超链接的参数值
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。