[英]How can I select an element's parent row in a table?
我有以下功能:
$("#example tbody").click(function(event) {
$(oTable.fnSettings().aoData).each(function (){
$(this.nTr).removeClass('row_selected');
});
$(event.target.parentNode).addClass('row_selected');
});
當用戶單擊表中的td元素時,它會將row_selected類添加到該行。 但是,當用戶單擊td內的輸入元素時,它會將row_selected類添加到td。
有沒有辦法可以更改event.target.parentNode,以便代替父類將它添加到父tr?
使用closest()
。
$(event.target).closest('tr').addClass('row_selected');
更改您的處理程序以使用jQuery的事件委派而不是您自己的...
$("#example tbody").on("click", "tr", function(event) {
...那么你可以用this
......
$(this).addClass('row_selected');
你可以使用parentsUntil()函數,這有點像尋找祖先。 我不記得祖先的功能,但這將有效:
$(event.target).parentsUntil("tr").addClass('row_selected');
你可以試試這個
$(event.target).closest('tr').addClass('row_selected');
而不是你的線
$(event.target.parentNode).addClass('row_selected');
使用nearest(),您將能夠將row_selected
類應用於您單擊的元素的最近的tr
元素,該元素可以是td
或其中的任何其他元素。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.