Ошибка: объект не поддерживает свойство или метод indexOf - PullRequest
0 голосов
/ 10 августа 2011

У меня есть вызов ajax для JsonAction

              $.ajax({
                url: "/Cancel/",
                context: document.body,
                success: function (result) {
                    if (result.indexOf("Authorize") != -1) //indexOf not supported?
                              window.location.replace("/Account/LogOn");
                         //...
              };

Почему это происходит?

Также я пытался пойти так:

var responce = result;
if (responce.indexOf("Authorize") != -1)

и

var responce = $(result);
if (responce.text().indexOf("Authorize") != -1)

Но все равно. Нед помогите как заставить работать .indexOf.

Ответы [ 2 ]

2 голосов
/ 10 августа 2011

Ответ сервера, вероятно, интерпретируется как JSON и автоматически преобразуется в объект данных с помощью jQuery.В этом случае он, скорее всего, не будет иметь члена indexOf и, безусловно, не будет функцией.

Попробуйте заставить jQuery оставить ответ в виде текста, установив атрибут dataType своих настроекОбъект для «текста»:

$.ajax({
  url: "/Cancel/",
  dataType: "text",
  ...
0 голосов
/ 10 августа 2011

Привет попробуйте использовать этот способ

$.ajax({
            url: "/Cancel/",
            context: document.body,
            success: function (result) {
              var str=String(result);
                if (str.indexOf("Authorize") != -1) //indexOf not supported?
                          window.location.replace("/Account/LogOn");
                     //...
                     //...
          };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...