【问题标题】:jquery: set the value of the added input with the append one at a timejquery:设置添加输入的值,一次附加一个
【发布时间】:2016-05-28 01:43:12
【问题描述】:

使用 ajax,我向表中添加了一个项目的一行,因此强加了输入的 id 值(连接到一个按钮,该按钮使用该特定项目卡打开 php 页面)。 第一个条目(通过追加)是好的:该项目正确显示,其 id 正确分配给按钮 但是当我在后续行中添加(通过附加)以下项目时,这些连续项目的设置的 id 不起作用:这些 id 中的每一个都具有 all 的值(id_item = 1 & id_item = 2 & id_item = 3 ...)。 append函数不保留属性设置? 附上我使用的代码:

$.ajax({
...
success: function(id_item) {
    var row_appended = (
        '<tr class="class_tr" id="id_tr">' +
            '<td width="90%">NEW ITEM</td>' +

            '<td width="10%">' +
                '<form method="GET" action="see_item.php">' +
                '<input type="hidden" name="id_item" class="id_item" value=0>' +
                '<button type="submit" class="button_change_item" title="see item">See item</button>'+
                '</form>' +
            '</td>' +

        '</tr>'
        );

    //$(append).appendTo('table#tabella_elenco_clienti');
    //OR:
    $("#table_items").last().append(row_appended);

    //$('table#table_items tr :input[value="0"]').val(id_item);
    //OR:
    $('#table_items tr:last :input.id_item').val(id_item);
},
  error: function(){
    alert("Error!!!");
  }
});

【问题讨论】:

  • 查看实际的 HTML 会很有帮助,但看起来这两行 jQuery 都是错误的。第一个看起来像是在表的最后一行而不是在最后一行之后添加新行。第二条 jquery 行似乎无效,应该是必要的。要修复第二个,您应该能够更改生成的 HTML:'&lt;input type="hidden" name="id_item" class="id_item" value="' + id_item + '"&gt;' +
  • 您尝试做的基本示例:JS Fiddle
  • @Anialation,谢谢,但在您的脚本中,所有项目都具有相同的 ID。如果项目 n。 2有不同的id(通过ajax由php页面收集),脚本设置相同的id :-(
  • 我不确定我是否理解您的推荐。我提供的脚本在每个名为“id_item”的隐藏输入上都有不同的值。你希望他们是一样的吗?当我在浏览器中检查元素时,ID 是唯一的。
  • #Anialation,抱歉我的英语不好。使用您(和我)的脚本,附加行中的每个 id_item 都是相同的。也许是因为“.click 不存在那些附加 id,因为它们不在 dom 上”(引文。Caius,在下面的回答中)。如果我将 value 属性设置为“.val(id-Item)”,则第二个(也是第一个)值变为“id_item=1&id_item=2”...

标签: javascript php jquery ajax


【解决方案1】:

您的问题不在附加函数上,而是在 jquery 或 jscript 执行上。 .click 不存在这些附加 ID,因为它们不在 dom 上 所以你应该使用 jquery .live|.on jquery action 而不是 .click

juqery.on

【讨论】:

  • 我只是看到您在每次执行时都创建了一个提交按钮,但不是表单,请记住,您将在一个文件中提交所有隐藏的输入,因为它具有相同的名称
猜你喜欢
  • 2018-11-10
  • 1970-01-01
  • 2016-09-05
  • 1970-01-01
  • 2011-10-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-12
相关资源
最近更新 更多