JQuery basic: Как удалить строку таблицы при нажатии кнопки этой строки?
$("#tableid tbody:last").append(html);
Это создает таблицы строк динамически.
Каждая новая строка имеет кнопку "удалить".
Теперь, если я нажму кнопку "Удалить", эта строка будет удалена.
Как я могу это сделать.
Спасибо заранее.
Ответы
Ответ 1
$(buttonSelector).live ('click', function ()
{
$(this).closest ('tr').remove ();
}
);
с помощью .live
для привязки вашего события будет автоматически связываться, когда динамически добавляется ваша строка.
Edit
live
теперь устарел, так как версия 1.7 я думаю.
Теперь можно использовать on
вместо live
.
$('#tableid').on('click', buttonSelector, function(){
$(this).closest ('tr').remove ();
});
Смотрите doc.
Ответ 2
Этот код можно использовать для удаления родительской строки, содержащей нажатую кнопку:
$(myButtonSelector).click(function(){
$(this).parents('tr').first().remove();
});
Для живого примера см. эту ссылку.
Подробнее см. в этой статье.
Ответ 3
Вы можете сделать что-то вроде:
$('.add').click(function(){
$("#tableid tbody:last").append('<tr><td>Hi</td><td><a class="remove">Remove</a>');
});
$('.remove').live('click',function(){console.log($(this).parent().parent().remove())});