Я новичок в jQuery, и у меня возникли проблемы с удалением определенного элемента li
, когда вы нажимаете на X
в div. Вместо того, чтобы удалять объект рядом с X
, он просто удаляет все элементы li
. Может кто-нибудь, пожалуйста, скажите мне, что я делаю неправильно? Благодарю.Как удалить определенный элемент li в jQuery
$(function() {
$("#btn2").click(function() {
var toAdd = $("#listItem").val();
$("ol").append("<li>" + toAdd + "</li>");
$('ol').append('<div> X </div>')
});
$("#listItem").keydown(function(e) {
if (e.which === 13) {
e.preventDefault(); // Don't submit the form
$("ol").append("<li>" + this.value + "</li>"); // append this.value
this.value = ""; // reset the value field
}
});
});
$(document).on('dblclick', 'li', function() {
$(this).css("text-decoration", "line-through");;
});
$(document).on('click', ' div', function() {
$('li').toggleClass('strike').fadeOut('slow');
});
Что вы имеете в виду удалить? o удалите его из DOM или просто удалите его – Kenny
Нам нужно увидеть ваш HTML, чтобы дать вам конкретный ответ, но ваша проблема заключается в том, что вы выбираете все '$ ('li')', тогда как вам нужно вместо этого пересечь DOM, чтобы найти 'li', связанный с кнопкой clicked close. Что-то вроде '$ (this) .closest ('li')' –
, пожалуйста, добавьте соответствующий HTML-код, чтобы увидеть код в действии – sa77