我有数据行,其中每列都是<td>
,其中包含<input>
。挑战是当用户按下提交按钮时,我希望提交2个表单,具有不同的输入。如何在输入中指定输入应该采用哪种形式?
这个时髦的原因是因为通常情况下,你有这个:
<form>
<table>
<tr>
<td><input /></td>
</tr>
</table>
</form>
因此,输入将转换为嵌套在其中的任何形式。但在我的情况下,因为我需要这样的戏弄是不可能的:
<form1>
<form2>
<table>
<tr>
<td><input1 /></td>
<td><input2 /></td>
<td><input2 /></td>
<td><input1 /></td>
<td><input1 /></td>
</tr>
</table>
</form1>
</form2>
如果除了执行以下操作之外无法完成上述工作:
<table>
<tr>
<form1>
<td><input1 /></td>
<td><input1 /></td>
<td><input1 /></td>
</form1>
<form2>
<td><input2 /></td>
<td><input2 /></td>
</form2>
</tr>
</table>
这也是一个可以接受的答案。我只是更愿意避免上述情况,因为从用户体验的角度来看,它最直观的意义是在表单中混合输入。
答案 0 :(得分:0)
如果不按照{strong>或提及或而不使用form
,则无法将输入分成两个不同的javascript
来实现此目的。好吧,第三种选择是通过名称(form[1][name]
,form[2][name]
等)在后端“分离”表单。
答案 1 :(得分:0)
通过JavaScript提交您想要的两组输入。如果您使用的是jQuery:
var group1 = $('#myform :input').not('.group2').serializeArray();
var group2 = $('#myform :input').not('.group1').serializeArray();
// post each group wherever you want
$.post("/page1", group1);
$.post("/page2", group2);