jQuery Table AddRow插件,为添加的行添加ID号
我有一个表单,我正在使用jQuery Table AddRow插件动态地向表中添加行,问题是当我选择菜单项进入菜单项左侧的文本框时我正在尝试。 它适用于第一行,但我无法弄清楚如何使用它来处理通过插件添加的行。
您可以在此处查看我的代码: http : //jsfiddle.net/VXNzd/
这是jQuery代码:
// This moves the select box text to the input box $('#mnu_names').change(function() { var mnuProduct = $("#mnu_names").find(':selected').text(); var mnuCleanProduct = mnuProduct.split(' - '); $('#topping_name').attr('value', mnuCleanProduct[0]); }); // This code is needed to add and delete rows with the plugin $(".toppings_add").btnAddRow({
通过访问顶部的jsfiddle链接,可能更容易看到我在说什么。 加载时使用选择框并选择一些内容,它会将该信息放入文本框中而不显示价格信息。 添加新行并再次尝试。 不会工作,无法弄清楚如何使其工作。
问题是由tomhallam说你的ID不是唯一的。 此外, $.change()
对运行后添加的块不起作用。 你应该使用$.on('change',...)
。
我更新了您的代码并将其发布在http://jsfiddle.net/PDPbn/5/上 。
修改后的jquery代码如下:
$(document).on('change','.mnu_names',function() { var mnuProduct = $(this).find(':selected').text(); var mnuCleanProduct = mnuProduct.split(' - '); $(this).parentsUntil('tbody').find('.topping_name').attr('value', mnuCleanProduct[0]); });