Jquery 获取tbody中动态生成的表行的id属性的未定义值

Jquery 获取tbody中动态生成的表行的id属性的未定义值,jquery,html,Jquery,Html,我在单击“添加行”时动态生成表行,在单击“删除行”时删除生成的行。 当我使用jquery获取id属性值时,只获取第一行的值,而其他动态生成的行则未定义 脚本: $(document).ready(function() { $('#add').click(function() { var id=parseInt($('#main tbody tr:last').attr('id'))+1;

我在单击“添加行”时动态生成表行,在单击“删除行”时删除生成的行。 当我使用jquery获取id属性值时,只获取第一行的值,而其他动态生成的行则未定义

脚本:

$(document).ready(function()
           {
               $('#add').click(function()
           {
               var id=parseInt($('#main tbody tr:last').attr('id'))+1;
               $('#main > tbody:last').append("<tr class=\"edit_tr\" id=\""+id+"\" ><td>"+id+"</td><td><textarea class=\"editbox\" id=\"parti_input_"+id+"\" rows=\"1\" cols=\"50\"></textarea></td><td><input type=\"text\" class=\"editbox qty\" id=\"qty_input_"+id+"\" /></td><td><input type=\"text\" class=\"editbox rs\" id=\"amountrs_input_"+id+"\" /></td><td><input type=\"text\" class=\"editbox p\" id=\"amountp_input_"+id+"\" /></td><td id=\"netamountrs_"+id+"\" ></td><td id=\"netamountp_"+id+"\"></td></tr>");

               });


           $('#del').click(function()
           {
               $('#main tbody tr:last').remove();

           }
           );

          $('#cal').click(function()
      {
          var c=$('#main tbody tr').length;
          var i;
          for(i=0;i<c;i++)
          {
              var d=$('#main tbody tr').val();
              document.write(d);
          }
          alert(c);
      });

           });
<table width="800" border="1" style="border-collapse: collapse;" id="main">
 <tbody><tr class="edit_tr" id="1"><td>1</td><td><textarea class="editbox part" id="parti_input_1" rows="1" cols="50"></textarea></td><td><input type="text" class="editbox qty" id="qty_input_1" /></td><td><input type="text" class="editbox rs" id="amountrs_input_1" /></td><td><input type="text" class="editbox p" id="amountp_input_1" /></td><td id="netamountrs_1"></td><td id="netamountp_1"></td></tr></tbody>
   </table>
            <p id="cal">calculate</p>
$(文档).ready(函数()
{
$('#添加')。单击(函数()
{
var id=parseInt($('#main tbody tr:last').attr('id'))+1;
$('#main>tbody:last')。追加(“+id+”);
});
$('#del')。单击(函数()
{
$(“#主tbody tr:last”).remove();
}
);
$('#cal')。单击(函数()
{
变量c=$(“#主tbody tr')。长度;
var i;

对于(i=0;ijQuery,如果您动态添加ID并以数字开头,它将不会获取ID。HTML 4中的对象不能以数字开头

因此,您需要创建一个
data id=”“
,然后使用
.data(“id”)

HTML:


1.
计算

剧本

$(document).ready(function()
           {
               $('#add').click(function()
           {
               var id=parseInt($('#main tbody tr:last').data('id'))+1;
               $('#main > tbody:last').append("<tr class=\"edit_tr\" data-id=\""+id+"\" ><td>"+id+"</td><td><textarea class=\"editbox\" id=\"parti_input_"+id+"\" rows=\"1\" cols=\"50\"></textarea></td><td><input type=\"text\" class=\"editbox qty\" id=\"qty_input_"+id+"\" /></td><td><input type=\"text\" class=\"editbox rs\" id=\"amountrs_input_"+id+"\" /></td><td><input type=\"text\" class=\"editbox p\" id=\"amountp_input_"+id+"\" /></td><td id=\"netamountrs_"+id+"\" ></td><td id=\"netamountp_"+id+"\"></td></tr>");

               });


           $('#del').click(function()
           {
               $('#main tbody tr:last').remove();

           }
           );

          $('#cal').click(function()
      {
          var c=$('#main tbody tr').length;
          var i;
          for(i=0;i<c;i++)
          {
              var d=$('#main tbody tr').val();
              document.write(d);
          }
          alert(c);
      });

           });
$(文档).ready(函数()
{
$('#添加')。单击(函数()
{
var id=parseInt($('#main tbody tr:last')。数据('id'))+1;
$('#main>tbody:last')。追加(“+id+”);
});
$('#del')。单击(函数()
{
$(“#主tbody tr:last”).remove();
}
);
$('#cal')。单击(函数()
{
变量c=$(“#主tbody tr')。长度;
var i;
对于(i=0;i
$(document).ready(function()
           {
               $('#add').click(function()
           {
               var id=parseInt($('#main tbody tr:last').data('id'))+1;
               $('#main > tbody:last').append("<tr class=\"edit_tr\" data-id=\""+id+"\" ><td>"+id+"</td><td><textarea class=\"editbox\" id=\"parti_input_"+id+"\" rows=\"1\" cols=\"50\"></textarea></td><td><input type=\"text\" class=\"editbox qty\" id=\"qty_input_"+id+"\" /></td><td><input type=\"text\" class=\"editbox rs\" id=\"amountrs_input_"+id+"\" /></td><td><input type=\"text\" class=\"editbox p\" id=\"amountp_input_"+id+"\" /></td><td id=\"netamountrs_"+id+"\" ></td><td id=\"netamountp_"+id+"\"></td></tr>");

               });


           $('#del').click(function()
           {
               $('#main tbody tr:last').remove();

           }
           );

          $('#cal').click(function()
      {
          var c=$('#main tbody tr').length;
          var i;
          for(i=0;i<c;i++)
          {
              var d=$('#main tbody tr').val();
              document.write(d);
          }
          alert(c);
      });

           });