Php jQuery表AddRow插件向添加的行添加ID号
我有一个表单,我正在使用jQuery Table AddRow插件来动态地向表中添加行,问题是当您选择一个菜单项时,该菜单项会进入它左侧的文本框中。它在第一行工作,但我不知道如何让它与通过插件添加的行工作 您可以在此处看到我的代码: 以下是jQuery代码:Php jQuery表AddRow插件向添加的行添加ID号,php,jquery,ajax,Php,Jquery,Ajax,我有一个表单,我正在使用jQuery Table AddRow插件来动态地向表中添加行,问题是当您选择一个菜单项时,该菜单项会进入它左侧的文本框中。它在第一行工作,但我不知道如何让它与通过插件添加的行工作 您可以在此处看到我的代码: 以下是jQuery代码: // This moves the select box text to the input box $('#mnu_names').change(function() { var mnuProduct = $("#mnu_name
// 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({
通过访问顶部的JSFIDLE链接,可以更容易地了解我所说的内容。当它加载时,使用选择框来选择某个内容,它会将该信息置于文本框中,而不包含价格信息。添加新行并重试。不起作用,想不出如何让它起作用 问题正如tomhallam所说,您的ID不是唯一的。另外,$.change对运行该命令后添加的块不起作用。您应该改为在“更改”上使用$ 我更新了你的代码并把它发布在了网站上 修改后的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]);
});
感谢您发布JSFIDLE。我无法立即看到您的问题,但请小心使用topping_名称(ID)和topping_名称(类)。一个页面上不应该有多个唯一ID。摘自jQuery文档:从jQuery 1.7开始,.live方法已被弃用。使用.on附加事件处理程序。在这种情况下,可以研究添加新行项目的方法,并将当时所需的事件附加到新对象。使用去擦写方法可能会导致以后的代码不受支持和不稳定。谢谢Zombaya,至于ID,我不知道Table AddRow如何处理它们,但我只使用这些示例来构建表单。我没有任何正式的jQuery edu,只是使用和玩我能找到的东西。从我所看到的,AddRow只是复制现有的行,这就是为什么你会得到非唯一id。好了,现在我知道你们都在谈论什么了。LOL复制了JS,但没有新的表单,它无法工作,然后我看到ID变为类。我确实明白你们对ID和表AddRow的克隆的意思。再次感谢