长期潜伏者,第一次海报。
我有一个页面可以动态地(使用 Javascript/jQuery)向表单添加键 => 值对输入。这些字段需要以数组的形式返回给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);
}
最佳答案
与其乱搞 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);
}
关于php - 使用非特定名称在 HTML 中动态设置输入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8043640/