gpt4 book ai didi

forms - 使用 jQuery 发送具有相同名称的表单元素数组的表单数据

转载 作者:行者123 更新时间:2023-12-01 04:15:43 24 4
gpt4 key购买 nike

我有这个表格:

...
<td><input type="text" name="code[]" value="" /></td>
<td>
<select class="selectProductOrders" name="selectProductOrders[]">
<option value="default" disabled selected>Select a product</option>
</select>
</td>
<td><input type="number" pattern="[0-9]*" name="rsp[]" value="" /></td>
<td><input type="number" pattern="[0-9]*" name="trade[]" value="" /></td>
<td><input type="number" pattern="[0-9]*" name="discount[]" value="0" /></td>
<td><input type="number" pattern="[0-9]*" name="qty[]" value="" /></td>
<td><input type="number" pattern="[0-9]*" name="cost[]" value="" /></td>
...

上面和下面还有更多内容,但这是重要的部分。表中的这一行根据订单中的产品数量而重复,因此我认为在服务器端解析每个订单项元素的数组会更容易。由于表单相当大,我决定使用 jQuery.serialize() 来以 json 格式发送数据。

它可以发送表单的其余部分,但不会发送上述每个输入元素的数组,它只发送最后一行。

有解决这个问题的想法吗?我想我可以手动将表单中的值键入 json 格式,但我想解决序列化问题。

谢谢!

最佳答案

我认为如果输入的名称全部相同,则无法使用 jQuery.serialize()

要将数组发送到服务器,我建议对您的输入进行编号:

<td><input type="text" name="code[0]" value="" /></td>
<td>
<select class="selectProductOrders" name="selectProductOrders[0]">
<option value="default" disabled selected>Select a product</option>
</select>
</td>
<td><input type="number" pattern="[0-9]*" name="rsp[0]" value="" /></td>
<td><input type="number" pattern="[0-9]*" name="trade[0]" value="" /></td>
<td><input type="number" pattern="[0-9]*" name="discount[0]" value="0" /></td>
<td><input type="number" pattern="[0-9]*" name="qty[0]" value="" /></td>
<td><input type="number" pattern="[0-9]*" name="cost[0]" value="" /></td>


<td><input type="text" name="code[1]" value="" /></td>
<td>
<select class="selectProductOrders" name="selectProductOrders[1]">
<option value="default" disabled selected>Select a product</option>
</select>
</td>
<td><input type="number" pattern="[0-9]*" name="rsp[1]" value="" /></td>
<td><input type="number" pattern="[0-9]*" name="trade[1]" value="" /></td>
<td><input type="number" pattern="[0-9]*" name="discount[1]" value="0" /></td>
<td><input type="number" pattern="[0-9]*" name="qty[1]" value="" /></td>
<td><input type="number" pattern="[0-9]*" name="cost[1]" value="" /></td>

这可确保您的所有值都发送到服务器。

关于forms - 使用 jQuery 发送具有相同名称的表单元素数组的表单数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14961006/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com