拆分在IE9中不起作用

时间:2016-10-20 15:57:15

标签: javascript jquery asp.net-mvc-3

拆分功能在IE9中不起作用

这是我的代码

 <script type="text/javascript">
        var currURL = window.location.href;
        $(document).ready(function () {
            var hasFilters = currURL.split('?')[1];
            alert(hasFilters);    
            if (hasFilters) {
                abc(currURL);
            }
        });
</script>

当我在IE9中运行此脚本时,在警报显示“未定义”时,在警报的其他浏览器中显示针对例如"abc=def:ijk!!a!!"的currurl的串联字符串。

所以我想在IE9中做同样的事情。

也许有人可以指出我正确的答案? THX

1 个答案:

答案 0 :(得分:-1)

更好的是:window.location对象具有搜索属性,这是您要查找的内容。

http://www.w3schools.com/jsref/obj_location.asp

window.location.search:设置或返回URL的查询字符串部分

为什么[1]可能无效...

只要你最后有?x=y,我就可以在这里使用IE浏览器了。 split返回一个数组,对于不存在的索引,您将得到未定义的。让我们看看两个测试用例:

window.location.href: index.html?x=y
split: 'index.html', 'x=y'
[0] = index.html
[1] = x=y

window.location.href: index.html
split: 'index.html'
[0] = index.html
[1] (etc) = undefined

我认为问题是在IE中你不包括? URL的一部分。我怀疑它是浏览器中的一个错误。