[英]How jQuery build JSON array from multiple similar input fields?
I have the below HTML code. 我有以下HTML代码。 I would like to get the first address then for each
additionalAddress(x)
to build a nice array so that I can insert them into db. 我想获得每个
additionalAddress(x)
地址additionalAddress(x)
的第一个地址,然后构建一个不错的数组,以便可以将它们插入db。 This is all part of an jQuery append
logic so the addresses can be unlimited. 这是jQuery
append
逻辑的全部内容,因此地址可以是无限的。
<div class="controls" id="Locations">
<input class="span7" type="text" placeholder="Full Address" id="Address" style="margin: 0px 5px 5px 0;"><br>
<input class="span3" type="text" placeholder="(555) 555-5555" id="Phone" name="Phone" onkeyup="drawPhone(this);" style="margin: 0px 5px 5px 0;">
<input class="span4" type="text" placeholder="name@mybusiness.com" id="Email" onkeyup="drawEmail(this);"> <i class="icon-plus-sign" id="addAddress"></i>
<span id="additionalAddress1"><br><br>
<input class="span7" type="text" placeholder="Full Address" id="Address1"><br><input class="span3" type="text" placeholder="(555) 555-5555" id="Phone1" name="Phone"><input class="span4" type="text" placeholder="name@mybusiness.com" id="Email1" > <i class="icon-minus-sign" id="removeAddress"></i></span>
<span id="additionalAddress2"><br><br><input class="span7" type="text" placeholder="Full Address" id="Address2"><br><input class="span3" type="text" placeholder="(555) 555-5555" id="Phone2" name="Phone"><input class="span4" type="text" placeholder="name@mybusiness.com" id="Email2" style="margin: -4px 0px 0 11px;"> <i class="icon-minus-sign" id="removeAddress"></i></span>
<span id="additionalAddress3"><br><br><input class="span7" type="text" placeholder="Full Address" id="Address3"><br><input class="span3" type="text" placeholder="(555) 555-5555" id="Phone3" name="Phone"><input class="span4" type="text" placeholder="name@mybusiness.com" id="Email3"> <i class="icon-minus-sign" id="removeAddress"></i></span>
</div>
If the number of additional addresses is fixed, you can use 如果附加地址的数量是固定的,则可以使用
[
$("#Address").val(),
$("#additionalAddress1 > input").val(),
$("#additionalAddress2 > input").val(),
$("#additionalAddress3 > input").val()
]
Assuming you removed the ids of the input
elements inside the additionalAddressX
spans. 假设您删除的ID
input
内部元素additionalAddressX
跨度。
[edit] If it is not fixed, you can use: [edit]如果它不是固定的,则可以使用:
var addresses = [$("#Address").val()];
$("span[id^='additionalAddress'] > input[id^='Address']").each(function(i,e) {
addresses.push($(e).val());
});
Assuming the input
elements inside the additionalAddressX
spans have ids like AddressX
. 假设
input
的内部元件additionalAddressX
跨越有像IDS AddressX
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.