Как заменить элемент в jQuery и вернуть элемент замены вместо удаляемого элемента?
У меня есть следующий сценарий. У меня много флажков, и как только вы нажмете один из них, этот флажок заменяется значком загрузки. Как только происходит какое-то действие AJAX, значок загрузки заменяется значком галочки.
Используя jQuery replaceWith
, вы бы сделали что-то вроде:
$("input[type='checkbox']").click(function() {
$(this).replaceWith("<img src='loading.jpg' alt='loading'/>");
$.post("somepage.php");
$(this).replaceWith("<img src='tick.jpg' alt='done'/>");
});
Однако это не работает, потому что replaceWith
возвращает удаленный элемент, а не тот, который был добавлен. Итак, после завершения работы AJAX, loading.jpg
просто останется там навсегда.
Есть ли способ вернуть элемент замены без его выбора?
Спасибо заранее.