今天在阅读js高级程序设计一书中,看到了如何用js获取URL参数的方法,自己测试了下,挺好用的,易于理解,便提笔记下,与大家分享。
function getQqueryStringArgs(){
//取得查询字符串并去掉开头的问号
var qs = (location.search.length > 0 ? location.search.substring(1) : ""),
// 保存数据的对象
args = {},
// 取得每一项
items = qs.length ? qs.split("&") : [],
item = null,
name = null,
value = null,
// 在foe中循环使用
i = 0,
len = items.length;
// 逐个将每一项添加到args对象中
for(i=0; i<len; i++){
item = items[i].split("=");
name = decodeURIComponent(item[0]);
value= decodeURIComponent(item[1]);
if(name.length){
args[name] = value;
}
}
return args;
}
使用时直接调用该函数即可。
例:
//假设我们的URL地址栏是“http://write.blog.csdn.net/postedit?name=Dave&age=26”
var args = getQueryStringArgs();
alert(args["name"]) //"Dave"
alert(args["age"]) //"26"