jquery each()不会遍历新添加的表行

Mur*_*nth 3 html javascript jquery

我有一张非常简单的桌子

<table>
<tr><td>1</td></tr>
<tr><td>2</td></tr>
<tr><td>3</td></tr>
</table>
Run Code Online (Sandbox Code Playgroud)

当我在td jquery中将文本5追加到上表的另一行时,每个()不循环通过新添加的行,它只返回预定义的元素而不是动态添加的元素

$("table > tbody").append("<td>5</td>");
$("table tr td").each(function(){
  alert($(this).text());
});
Run Code Online (Sandbox Code Playgroud)

请参阅JS FIDDLE LINK HERE

Adi*_*dil 6

tbody你不能td直接包装他们tr.

现场演示

$("table > tbody").append("<tr><td>5</td></tr>");
$("table tr td").each(function(){
  alert($(this).text());
});
Run Code Online (Sandbox Code Playgroud)


ale*_*lex 5

你的推理是不正确的.它找不到元素的原因是因为您的选择器与您要追加的元素的嵌套不匹配.

td元素包装在元素中tr.