如何在新元素的jquery中获得第n个子元素
我使用jquery创建了表行:
var tableRow = $("").append($("").text("one")) .append($(" ").text("two")) .append($(" ").text("three"));
现在我将它添加到文档中的表中:
$("#table_id").append(tableRow);
我要做的下一件事是在上面创建的tableRow的一些单元格上设置click事件。 我想为此目的使用第n个子选择器。 但是从文档中可以看出,它可以与一些选择器一起使用,例如:
$("ul li:nth-child(2)")
但现在我需要使用:nth-child()
作为变量tableRow。 这怎么可能?
我想为此目的使用第n个子选择器。
在这种情况下,您可以使用.find()
cell = tableRow.find(':nth-child(2)'); cell.on('click', function() { ... });
你可以使用.find()和nth-child
tableRow.find('td:nth-child(2)')
或者在这种情况下,您可以使用.children() ,这可能会更好
tableRow.children('nth-child(2)')
尝试使用.eq()
类的
$("#table_id tr td:eq(1)")
或者你可以直接从tableRow调用
$(tableRow + "tr td:eq(1)")
你动态创建了元素,所以你必须使用以下结构,如果它是静态创建的(即:用HTML创建,你可以使用你提到的ul)
$('#table_id').find(":nth-child(2n)")
DEMO