我有一个虚拟表单和实际表单,在某些时候我想将所有输入值从虚拟表单复制到真实表单。 虚拟字段将具有与真实表单相同的名称(因此我可以将它们匹配)。
所以以虚拟形式:
<input name="item1" value="field1" />
<input name="item2" value="field1" />
<input name="item3" value="field1" />
真实形式:
<input name="item1" value="" />
<input name="item2" value="" />
<input name="item3" value="" />
我假设我需要以虚拟形式迭代每个输入(使用 jQuery .each() ?),同时收集 JS 对象中的名称和值。 然后以真实形式迭代每个输入,将名称匹配为选择器并设置值(也许这可以在一个 .each() 函数中完成???)
我从以下代码开始,它仅将值(和索引)抓取到数组中,但是因为我需要两个值(名称和值,索引不相关),所以我假设我需要一个对象而不是一个对象数组,但真的不知道从哪里开始。
var inputValues = [];
$("#dummyForm input").each(function() {
inputValues.push($(this).val());
});
非常感谢任何帮助或建议。
最佳答案
将它们映射为
$('#DummyForm [name]').each(function() {
var name = $(this).attr('name');
$('#RealForm [name="' + name + '"]').val($(this).val());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
<form id="DummyForm">
<input name="item1" value="field1" />
<input name="item2" value="field2" />
<input name="item3" value="field3" />
</form>
<form id="RealForm">
<input name="item1" value="" />
<input name="item2" value="" />
<input name="item3" value="" />
</form>
关于javascript - 使用 jQuery/Javascript 将多个输入字段复制到其他匹配的输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31174243/