我们上网时经常看到地址栏的 url 是类似这样的:
http://xxxx.com/xxxx.xxx?a=b&c=d&e=......
在 javascript 中,如果想得到当前 url 中的 get 参数(比如上面 url 中参数 a 的值),则可以用下面的办法得到。
var search = document.location.search;
var keywords = '';
var hash = {};
if (search.length > 1) {
search = search.substring(1);
var params = search.split('&');
for (var i = 0; i < params.length; i++) {
var param = params[i].split('=');
hash[decodeURIComponent(param[0])] = decodeURIComponent(param[1].replace(/+/g, '%20'));
}
}
return hash;
通过执行上面的 js 脚本,get 参数就以散列表的形式存在了变量 hash 中,如果想得到其中的一个参数的值,比如 q,则可以通过取 hash.q 的值来完成。
其实为了达到目的,实现方式不知这一种,在此抛砖引玉,欢迎大家的技术交流。