jquery $ .post выполнит успех вместо ошибки, если соединение с сервером потеряно - PullRequest
0 голосов
/ 25 августа 2011

Я использую этот код для подключения к серверу через jquery

var jqxhr = $.post('@Url.Action("../CheckMessage")',  { 'MessageId': MessageId }, 
    function (data, s) {
        alert ('This is executed on success only - data: ' + data + 's: ' + s);
    }
)
.error(function(XMLHttpRequest, textStatus, errorThrown) { alert("error"})

Если я создаю новое исключение на сервере, метод .error выполняется правильно, но если я выключаю сервер, то выполняется метод успеха. Как я могу проверить, было ли потеряно соединение с сервером?

1 Ответ

0 голосов
/ 25 августа 2011

Ajax вызовет кэшированные данные для последующего запроса, если вы не укажете cache как false в настройке ajax. Попробуйте это cache:false, используя $.ajax.

$.ajax({
     url:  '@Url.Action("../CheckMessage")',
     data: { 'MessageId': MessageId }, 
     cache: false,
     success: function (data, s) {
        alert ('This is executed on success only - data: ' + data + 's: ' + s);
     },
     error: function(XMLHttpRequest, textStatus, errorThrown) { 
       alert("error");
     }
});

.

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