2015-02-18 6 views
-1

Я следующий Ajax запрос вызывается:Почему мой запрос ajax возвращает пустой ответ?

$.ajax({ 
    type: "POST", 
    url: "/admin/RoutingIndicators/Add", 
    data: { newSecondaryRI: newRi }, 
    success: function() { 
     alert('hit'); 
     document.location.reload(true); 

    }, 
    error: function (xhr, status, error) { 
     var err = eval("(" + xhr.responseText + ")"); 
     alert(err.Message); 
    } 
}); 

Способ добавить в контроллер выполняет отлично и возвращает ниже:

return Json(JsonResponses.Success()); 

Тем не менее, ни одна из функций в запросе Ajax (успех, ошибка, полная) огонь после того, как метод возвращает успех в первый раз. После второго перехода первое значение, которое я добавил, появляется, но не второе. Если я перезагружу страницу, появится другая, поэтому я знаю, что метод Add работает правильно. Что может привести к пропуску методов в запросе ajax для первой итерации?

+0

Где вы читаете ценность в успехе? Где вы обновляете страницу tge после вызова Ajax? Все, что я вижу, это перезагрузка страницы – epascarello

+0

Чтение значения в успехе? Что вы имеете в виду? Я обновляю страницу на этой перезагрузке. Истина - это перезагрузка данных с сервера, а затем переход к методу Index ActionMethod, который сбрасывает данные, отображаемые на странице. Но это нормально работает. @epascarello –

+0

Я понятия не имею, какова ваша проблема. Итак, вы говорите, что вызов Ajax терпит неудачу? Вы уверены, что это имеет какое-либо отношение к призыву Ajax? Есть ли ошибки в консоли? Этот код ошибки выглядит неправильно. Ответ JSON не будет, если сервер вернет ошибку, так что это будет ошибка. – epascarello

ответ

0

Так что я нашел обходное решение. Если я установил async в false в свой запрос ajax, тогда функция успеха будет удалена, и все будет работать так, как должно.

Смежные вопросы