jquery遍历新创建的元素
我试图在我的表中添加新行,并将它们保存到DB中。
首先,我使用.append()在表上追加行:
$("#tablename").append("newly added row ");
附加function正常。 我的页面显示正确的结果。
但是,我无法选择它们
$("#newRow").each(function () { alert "it never reaches here!"; });
我猜这是因为在加载DOM之后添加了元素。 任何人都可以告诉我如何迭代我所有新添加的元素?
谢谢。
你应该在这种情况下使用一个class
,一个ID必须是unqiue(它是无效的HTML,否则会给出一些奇怪的行为),如下所示:
$("#tablename").append("newly added row "); $(".newRow").each(function () { alert "it never reaches here!"; });
尼克的方法很好,这是另一个:
$(function(){ //add a class to mark the last row on load $('#tableName tr:last').addClass('lastRow'); // ... // select new rows when you click save $('input:submit').click(function(){ $('#tableName tr.lastRow').nextAll().each(function(){ alert('added row'); }); }); });
如果您只需循环新行,则可以执行以下操作:
var rows = $("newly added row ").appendTo('#tablename'); rows.each(function () { alert "it never reaches here!"; });