Вопросы:
- Должны ли мы изменить наше кодирование, как предложено ниже?
- Есть ли разница между
.done()
иsuccess:
,.fail()
иerror:
и.always()
иcomplete:
?
Преамбула:
Я собирал вызов jQuery.ajax, который я успешно сделал и в прошлом. Что-то вроде этого:
$.ajax(
{
url: someUrl,
type: 'POST',
data: someData,
datatype: 'json',
success: function (data) { someSuccessFunction(data); },
error: function (jqXHR, textStatus, errorThrown) { someErrorFunction(); }
});
Внимательно просмотрев некоторую документацию, я наткнулся на ссылку, в которой утверждается, что успешные, ошибочные и полные обратные вызовы устарели от jQuery 1.8. Чтобы подготовить код для их возможного удаления, используйте вместо него jqXHR.done(), jqXHR.fail() и jqXHR.always().
Поэтому мы должны начать кодирование чего-то вроде этого:
$.ajax( "example.php" )
.done(function (data) { someSuccessFunction(data); })
.fail(function (jqXHR, textStatus, errorThrown) { someErrorFunction(); })
.always(function() { alert("complete"); });