Jquery为每个动态添加的选择框迭代函数

时间:2015-07-04 03:26:45

标签: javascript jquery html clone

遇到jquery的一些问题并试图找出如何使用相同的函数并迭代使用jquery.clone()动态添加的select box。

这是克隆内容的片段

x86_64

这是我的jquery代码。对不起,我只发布了我的代码片段,声明了i变量。

<select name="expense_type" id="expense_type">
    <option value=""></option>
    <option value="daily_pay">Daily Pay</option>
    <option value="Lodge">Lodging</option>
    <option value="Meals">Meals</option>
    <option value="Mileage">Mileage</option>
    <option value="Telephone">Telephone</option>
    <option value="Expense">Expense</option>
    <option value="PaLandRecords">PA Land Records</option>
    <option value="Landex">Landex</option>
    <option value="Copies">Copies</option>
    <option value="Other">Other</option>
</select>

所以基本上克隆一个选择框后,我试图让jquery自动更新它的自我并创建一个更改事件,这样无论表单上的选择框数量多少,它都会自动提醒用户新值改变之后,任何帮助都会很棒。

1 个答案:

答案 0 :(得分:1)

$("#add").click(function() {
    $("#tr_clone").clone().find("input,select").each(function() {
        $(this).val('').attr("id", function(_, id) {
            return id + i
        });
    }).end().appendTo("table");

    $("#expense_type_" + i).change(function() {
        alert($(this).val());
    });

    i++;
});

如果你想为每个选择框使用相同的功能,你可以执行以下操作

$('body').on('change', '.mySelector', function(){
    alert($(this).val());
});