其他 API 方法
jQuery 提供了多种可用于 DOM 操作的方法。
第一个是 .empty()
方法。
想象一下以下标记:
<div id="content">
<div>Some text</div>
</div>
通过调用 $('#content').empty();
,内部 div 将被删除。这也可以通过使用 $('#content').html('');
来实现。
另一个方便的函数是 .closest()
函数:
<tr id="row_1">
<td><button type="button" class="delete">Delete</button>
</tr>
如果要查找与其中一个行单元格中单击的按钮最近的行,则可以执行以下操作:
$('.delete').click(function() {
$(this).closest('tr');
});
由于可能会有多行,每行都有自己的 delete
按钮,我们在 .click () 函数中使用 $(this)
将范围限制为我们实际点击的按钮。
如果你想获得包含你点击的 Delete
按钮的行的 id
,你可以这样:
$('.delete').click(function() {
var $row = $(this).closest('tr');
var id = $row.attr('id');
});
通常认为使用 $
(美元符号)为包含 jQuery 对象的变量添加前缀,以明确变量是什么。
.closest()
的替代方法是 .parents()
方法:
$('.delete').click(function() {
var $row = $(this).parents('tr');
var id = $row.attr('id');
});
并且还有一个 .parent()
函数:
$('.delete').click(function() {
var $row = $(this).parent().parent();
var id = $row.attr('id');
});
.parent()
只上升到 DOM 树的一个级别,因此它非常不灵活,如果你要将删除按钮更改为包含在 span
中,那么 jQuery 选择器将被破坏。