使用JS获取地址栏参数
方法一:
function GetQueryString(name) {var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");var r = window.location.search.substr(1).match(reg);if(r!=null)return unescape(r[2]); return null;}
调用方法console.log(GetQueryString("参数名"));
方法二:
/** * 获取指定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; }
调用方法console.log(getUrlParam(document.href,"参数名"));
使用jQuery获取地址栏参数
使用下面的方式为jquery扩展一个方法来获取url参数
(function ($) {$.getUrlParam = function (name) {var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");var r = window.location.search.substr(1).match(reg);if (r != null) return unescape(r[2]); return null;}})(jQuery);
调用方法console.log($.getUrlParam(参数名));
注意:javascript对参数编码解码方法要一致
escape() unescape()encodeURI() decodeURI() encodeURIComponent() decodeURIComponent()