laogao01200
laogao01200
采纳率80%
2018-10-09 09:36 阅读 1.1k
已采纳

IE8下url问号后面的参数获取不到

我要获取请求路径下问号后面的参数,我在ie11下好用,在ie8下路径后面问号的参数没有了现在在IE8下面获取不出来参数,问一下大神们我是要配置一下IE8还是该怎么弄,IE11好用
如图所示1
2

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    wujixiaofeng wujixiaofeng 2018-10-09 12:47
     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获得各种参数

    点赞 评论 复制链接分享
  • id_no_chinese smallerCoder 2018-10-09 12:11

    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];
    }
    }
    希望对你有帮助

    点赞 评论 复制链接分享
  • diannet 瞧俺老孙的 2018-10-10 00:23

    楼上两位的思路都可以解决问题,但是你后端的语言是什么啊?你是怎么获取的?

    点赞 评论 复制链接分享

相关推荐