Оксана
Оксана

Простецкий вопрос по AJAX - функция коллбэка

Есть код $('#digital_download').load('...localhost/index2.php', function(data){
if (data=="Hello!") {
$('#digital_download').html('YES');
};
});

Вот эта функция дата, она выполняется после получения кода от скрипта. Но если условие не выполняется, то она все равно пишет результат туда в див?

Al
Almanack

Да, в этом и смысл load() - в любом случае изначально запишет результат в этот блок. А если условие выполнится, этот результат заменится на "YES"

Если нужно заранее проверить, что прилетело, потом решать что с ним делать, можно использовать

$.get() - api.jquery.com/jQuery.get/
$.ajax() - api.jquery.com/jQuery.get/

Или new XMLHttpRequest();

ОН
Олег Наумов

Ещё есть
jQuery.getJSON ()
jQuery.get()
jQuery.post()
И во всех их можно создать две функции обработки done() и fail () на случай если ошибок не было или были. Но оно ловит только ошибки в статусе ответа страницы

Похожие вопросы
Вопрос, конечно, простецкий, НО...
Как обновить содержимое элемента? (AJAX JQuery)
Почему отправка ajax происходит после прохода всего цикла?
Ajax как подгрузить контент без перезагрузки?
Как отловить предупреждение браузера для $.ajax()?
Ajax. jQuery. Передать все значения табицы БД из PHP в JS и вывести их на экран. PHP 7.3
Зачем нужен ASP.NET 2.0 AjAX?
Есть проблема с AJAX (JQuery)
Запросы ajax, передача данных в файл.
Не обрабатывается запрос при отправке данных в AJAX