我要获取请求路径下问号后面的参数,我在ie11下好用,在ie8下路径后面问号的参数没有了现在在IE8下面获取不出来参数,问一下大神们我是要配置一下IE8还是该怎么弄,IE11好用
如图所示
function parseURL(url){
if(typeof url=='undefined')url=location;
var a=document.createElement('a');
a.href=url;
return {
source:url,
protocol:a.protocol.replace(':',''),
host:a.hostname,
port:a.port,
query:a.search,
params:(function(){
var ret={},
seg=a.search.replace(/^\?/,'').split('&'),
len=seg.length,i=0,s;
for(;i<len;i++){
if(!seg[i]){continue;}
s=seg[i].split('=');
ret[s[0]]=s[1];
}
return ret;
})(),
file:(a.pathname.match(/\/([^\/?#]+)$/i)||[,''])[1],
hash:a.hash.replace('#',''),
path:a.pathname.replace(/^([^\/])/,'/$1'),
relative:(a.href.match(/tps?:\/\/[^\/]+(.+)/)||[,''])[1],
segments:a.pathname.replace(/^\//,'').split('/')
};
}
这个代码可以解析url获得各种参数
var url = window.location.href;
var queryStr = url.substring(url.indexOf('?') + 1, url.length);
var queryObj = {};
if (queryStr) {
var queryArr = queryStr.split('&');
for (var i = 0; i < queryArr.length; i++) {
var tmp = queryArr[i].split('=');
queryObj[tmp[0]] = tmp[1];
}
}
希望对你有帮助
楼上两位的思路都可以解决问题,但是你后端的语言是什么啊?你是怎么获取的?