Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/248.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php jQuery表AddRow插件向添加的行添加ID号_Php_Jquery_Ajax - Fatal编程技术网

Php jQuery表AddRow插件向添加的行添加ID号

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

我有一个表单,我正在使用jQuery Table AddRow插件来动态地向表中添加行,问题是当您选择一个菜单项时,该菜单项会进入它左侧的文本框中。它在第一行工作,但我不知道如何让它与通过插件添加的行工作

您可以在此处看到我的代码:

以下是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({

通过访问顶部的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的克隆的意思。再次感谢