从使用Jquery创建的HTML动态表的单元格中获取值

时间:2014-06-01 01:30:15

标签: javascript php jquery html

我创建了一个表,当用户使用input和select字段输入一些值时,该表会动态增长。这是通过jquery的追加来完成的。这是表id =" customFields":

===============================================
|  ID   |  CLASS  |  PRICE  |  QTY  |  DELETE |
===============================================

这是我用来追加行并向表中添加信息的jQuery脚本:

var index = 0;
$("#addPRICE").click(function(){
    index++;
    var id_value = $("#pack_price").val();
    var price_qty= $("#price_qty").val();

    //alert(id_value);
    $.ajax({
        type:"POST",
        url:"get_mt_pricelist.php",
        data:{mt_id: id_value},
        dataType:"json",
        success: function(data){
            if(data.success=="true"){
               $("#customFields").append('<tr id="'+index+'" valign="top"><td align="center"><input type="text" class="code1" id="customID" name="customID[]" value="'+id_value+'" size="3" readonly="readonly"/></td><td><input type="text" class="code2" id="customCLASSE" name="customCLASSE[]" value="'+data.multi_classe+'" readonly="readonly"/></td><td><input type="text" class="code3" id="customPRICE" name="customPRICE[]" value="'+data.multi_price+'" readonly="readonly"/></td><td align="center"><input type="text" class="code4" id="customQTY" name="customQTY[]" value="'+price_qty+'"/></td><td valign="middle" align="center"><a href="javascript:void(0);" class="remCF">Delete</a></td></tr>');
     });
});

一切正常,字段正常添加。我使用ajax和所有内容从MySQL数据库中获取一些值。我创建了一个名为remCF的DELETE类,因此当用户点击它时,实际行将被删除。 此外,我有一个索引,给每个ID号码。 我想捕获单元格PRICE和QTY中的值,并在用户单击DELETE时将其弹出警报消息,然后继续执行remove()。

这就是我所做的:

$("#customFields").on('click','.remCF',function(){
     alert($(".code3").val());
     alert($(".code4").val());
     $(this).parent().parent().remove();
}); 

问题是:警报仅显示我按下的任何DELETE的第一行的值。甚至使用CLASS而不是ID。 如何为我单击的DELETE行获取正确的值?

由于

1 个答案:

答案 0 :(得分:2)

你可以试试这个:

var row = $(this).closest('tr');
var customPRICE = row.find('.code3').val();
var customQTY = row.find('.code4').val();
row.remove();