[英]Copy multiple input fields to other matching input fields with jQuery/Javascript
我有一個虛擬形式和實際形式,在某些時候,我想將所有輸入值從虛擬形式復制到真實形式。 虛擬字段將具有與真實形式相同的名稱(因此我可以將它們匹配)。
所以以虛擬形式:
<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="" />
我假設我需要在以JS形式收集名稱和值的同時,以虛擬形式(使用jQuery .each()?)遍歷每個輸入。 然后以實數形式遍歷每個輸入,匹配名稱作為選擇器並設置值(也許可以在一個.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>
您可以執行以下操作:
$('#dummy input').each(function(){
if($('#real input[name='+$(this).prop('name')+']').length == 1)
$('#real input[name='+$(this).prop('name')+']').val($('#dummy input[name='+$(this).prop('name')+']').val())
});
這是我的小提琴 ...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.