Я не могу понять, почему в обратном вызове ajax «.html()» не работает. Цель состоит в том, чтобы заменить содержимое. Классы добавляются к элементу, но содержимое этого являются пустыми:jQuery .html не работает на ячейке таблицы
<td class="book-class centre cancelled"></td>
Я удалил все другие сценарии со страницы, чтобы гарантировать, что ничего не сталкиваясь, я попытался удалить .removeClass() и .addClass(), но все же он не работает. Проведя два часа, глядя на него, я уверен, что это закончится тем, что станет чем-то простым, но любая помощь будет очень признательна.
$(document).ready(function() {
// Cancel Class
$(document).on('click', '.cancel-class', function(e) {
e.preventDefault();
var cell = this;
var row = $(this).parent();
var id = $(row).data('booking-id');
$(this).html('<img src="assets/images/spinner.gif" class="spinner" data-booking-id="'+id+'">');
$.ajax({
type: "POST",
url: "controllers/cancelClass.ctrl.php",
dataType: 'json',
cache: false,
data: {"id": id},
success: function() {
// NOT WORKING
$(cell).removeClass().addClass('book-class centre cancelled').html('<i class="fa fa-times-circle></i> Cancelled');
},
error: function(data) {
console.log(data);
}
});
});
});
Да, это было спасибо. Это довольно неловко ... – MKC