长时间潜伏,第一次海报。
我有一个动态的页面(使用Javascript / jQuery)add key =>值对输入到表单。这些字段需要作为数组返回给PHP进行处理,因此这些键都被命名为“complete_fields []”,并且这些值都被命名为“complete_values []”。现在这是我的问题。如果我填写了一些输入,那么想要添加另一个键=>值对,我可以点击一个按钮,Javascript将发挥其魔力。但是,由于未填写HTML“value =”部分,因此我已填写的输入将被Javascript删除。所以我的问题是:如何使用JS动态设置输入的HTML值,即使所有输入都命名相同?如果这不可能,我如何在不删除所有其他HTML的情况下添加到div的末尾?
以下是Javascript添加输入代码:
function addCompleteField() {
var oldhtml = $("#complete_fields").html();
var newrow = '<tr><td><input type="text" name="complete_fields[]" > => <input type="text" name="complete_values[]" ></td></tr>';
$("#complete_fields").html(oldhtml+newrow);
}
答案 0 :(得分:1)
不要乱用HTML,只需使用jQuery的clone
方法克隆元素:
function addCompleteField() {
var table = $('#complete_fields'),
lastRow = table.find('tr').last(),
newRow = lastRow.clone(true);
newRow.find('input').val(''); // blank the new row's input elements
newRow.appendTo(table);
}