Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript &引用;SCRIPT438:对象没有';t支持属性或方法';url'&引用;仅在IE中_Javascript_Jquery_Internet Explorer - Fatal编程技术网

Javascript &引用;SCRIPT438:对象没有';t支持属性或方法';url'&引用;仅在IE中

Javascript &引用;SCRIPT438:对象没有';t支持属性或方法';url'&引用;仅在IE中,javascript,jquery,internet-explorer,Javascript,Jquery,Internet Explorer,我在IE(但不是Firefox)中遇到以下错误: 还有其他几个帖子也有类似的错误(对于url以外的其他对象),但所有这些帖子的答案似乎都是“这样的函数在jquery中不存在”或“这样的函数在此上下文中使用无效”,至少就我所知,这两个帖子似乎都不适用于我的情况 包含错误所指行号的函数为: function redirectToLogin() { var redirUrl = $.url().attr("path"); if ($.url().attr("query").length

我在IE(但不是Firefox)中遇到以下错误:

还有其他几个帖子也有类似的错误(对于url以外的其他对象),但所有这些帖子的答案似乎都是“这样的函数在jquery中不存在”或“这样的函数在此上下文中使用无效”,至少就我所知,这两个帖子似乎都不适用于我的情况

包含错误所指行号的函数为:

function redirectToLogin() {
    var redirUrl = $.url().attr("path");
    if ($.url().attr("query").length > 0) {
        redirUrl += "?" + $.url().attr("query");
    }
    top.window.location = "/Shared/Logout?redir=" + encodeURIComponent(redirUrl);
    return;
}
其中第28行是上述函数的第二行

更奇怪的是,在有问题的页面上(调用上述函数),当我在IE开发者工具控制台中键入
$.url()
$.url().attr(“路径”)
时,它分别返回正确的对象和字符串。如果我“观察”这些值,它们似乎也会保持正确

任何帮助都将不胜感激


编辑:

我找到了一个解决办法:

function redirectToLogin() {
    top.window.location = "/Shared/Logout?redir=" + encodeURIComponent(location.pathname + location.search);
    return;
}

这似乎是可行的,并且达到了同样的效果,所以我在这里发布它,以防对某人有所帮助。但是,我仍然想知道为什么使用jquery的原始代码不起作用。

如果您说它在控制台中起作用,我猜代码是在初始化
$.url()
之前尝试使用它的。AjaxSetup文件之前是否包含url JavaScript?

谢谢您的回复。url Javascript是指jquery包含哪些内容?如果是,是的。母版页上包含的内容如下:
function redirectToLogin() {
    top.window.location = "/Shared/Logout?redir=" + encodeURIComponent(location.pathname + location.search);
    return;
}