通过js获得url参数
//通过js获得URL参数值//var url=parent.location.search;
var url=" http://www.idt.com.cn?temp=1&dd=2&aa=3";
var Request = new Object();
if(url.indexOf("?")!=-1)
{
var str = url.substr(1);
strs = str.split("&");
for(var i=0;i<strs.length;i++)
{
alert(strs[i]);
Request[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
}
}
有这样两个问题:
1.
为什么str = url.substr(1),而不是直接str=url。
2
这个方法为什么得不到“?”后面的第一个参数的值,也就是temp。但是可以得到第二个以后参数,如果要得到第一个参数,怎样可以得到?
追问:我已经改好了,你的方法也不错。//通过js获得URL参数值
//var url=parent.location.search;
var url=" http://www.163.com.cn?temp=1&dd=2&aa=3";
var Request = new Object();if(url.indexOf("?")!=-1)//参数前的地址 http://www.163.com.cn的位数
{
var str = url.substr(url.indexOf("?")+1);strs = str.split("&");
for(var i=0;i<strs.length;i++)
{
Request[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
}
}
alert(Request['temp']);
alert(Request['dd']);
alert(Request['aa']);