2

这里需要一些帮助。

所以基本上我有一个包含以下字段的表格。单击“添加更多产品”按钮后,它会克隆产品、库存和数量字段并创建一个新行。Product 字段是产品的下拉列表(从 mysql 查询)

我需要帮助的是,如果有人选择了一种产品,我需要它来查询数据库并显示所选产品的库存水平。我已经让它与一行一起工作,但不能让它在克隆的元素上工作(分别)。代码如下。非常感谢一些帮助。

<select name="product[]" id="product">
    <option value="product 1"> Product 1</option>
    <option value="product 2"> Product 2</option>
    <option value="product 3"> Product 3</option>
    <option value="product 4"> Product 4</option>
</select>
<input type="text" id="stockclass="inputfield" name="stock" size="8" />


$('#product').on("change", function() {
    var val = $(this).val();
    $("#stock").val(val2);                        
});

$("#add").on("click", function() {
    var row = $('#item tbody > tr:last').clone(true);            
    row.insertAfter('#itemsTable tbody > tr:last');
   return false;            
});
4

1 回答 1

2

使用.on()因为.live()从现在开始贬值。

$(document).on('click','SELECTOR',function(){ /*...*/ });

您正在克隆完全错误DOMs的相同内容。ID使用Class.

例子

<select name="product[]" class="product">
    <option value="product 1"> Product 1</option>
    <option value="product 2"> Product 2</option>
    <option value="product 3"> Product 3</option>
    <option value="product 4"> Product 4</option>
</select>
<input type="text" class="quantity inputfield" name="quantity[]" size="8" value="" />
<input type="text" class="target_price inputfield" name="target_price[]" size="8" value="" />
<input type="text" class="stock_availability inputfield" name="stock_availability[]" size="8" value="" readonly="readonly" />

现在另一个是你有选择框的点击事件是错误的,它应该是改变事件。

作为

$('.product').on('change',function()
{

    $.ajax(
    {
        //ajax params and options and in success set value
    });

});
于 2013-03-06T10:19:59.577 回答