如何用正则和document.location.search获取URL的值
要获取当前页面URL的参数,可能大家第一个想到是使用 window.location.href 或者是document.location.href ,获取结果诸如http://www.kqiqi.com/?kk=xx&qq=xx ;但是其实我们需要的只是:?kk=xx&qq=xx。这种形式可以使用 document.location.search 这个属性获取。
如果我想要获取该URL后面参数kk的值该怎么弄呢?常见的方式可能是这样:
function(param) {
var url = window.location.toString();
url = url.split('?');
if (typeof(url[1]) == 'string') {
url = url[1].split('&');
for (i = 0; i < url.length; i++) {
s = url[i].split("=");
if (s[0] == "param") return s[1];
}
}
return null;
}
改用document.location.search和正则获取参数将使代码更加简洁:
function getParameter(sProp) {
var re = new RegExp(sProp + "=([^\&]*)", "i");
var a = re.exec(document.location.search);
if (a == null) return null;
return a[1];
};
上一条: js页面跳转的几种方式大全
下一条: 如何js去掉空格的代码