«SCRIPT438: объект не поддерживает свойство или метод url» только в IE - PullRequest
1 голос
/ 14 февраля 2012

Я получаю следующую ошибку в IE (но не в Firefox):

SCRIPT438: Object doesn't support property or method 'url' 
AjaxSetup.js?version=7b8dcb65-17d1-437f-9594-0621c779427c, line 28 character 2

Есть несколько других сообщений с подобными ошибками (для других объектов, кроме 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 - вторая строка функции выше.

Что еще более странно, когда на странице нарушителя (с которой вызывается вышеуказанная функция), когда я набираю $.url() или $.url().attr("path") в консоли инструментов разработчика IE, она возвращает правильный объект и строку соответственно. Значения также остаются правильными, если я их "наблюдаю".

Любая помощь будет высоко ценится!


EDIT:

Я нашел обходной путь:

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

Кажется, что это работает и дает то же самое, поэтому я публикую это на тот случай, если это кому-нибудь поможет. Однако мне все равно было бы любопытно узнать, почему оригинальный код, использующий jquery, не работал.

1 Ответ

0 голосов
/ 14 февраля 2012

Я думаю, если вы скажете, что в консоли работает, код пытается использовать его до инициализации $.url().Включен ли URL JavaScript перед файлом AjaxSetup?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...