我正在使用 ASP.NET MVC 开发一个非常灵活的 HTML 表单。我有一个“数量”输入元素,它稍后在表单中动态创建 [其值] 输入元素集。
例如,如果数量设置为 1,我有一组用于用户名、房间号和建筑物名称的文本框。但是如果 Quantity 设置为 10,则每个文本框都会出现 10 个。
显然,当数据回传到服务器时,我需要正确地将每个用户名、房间和建筑物分组在一起,而不是让它们混乱。
似乎最简单的方法是使每个集合都相同:
<input type="text" name="username"/>
<input type="text" name="room"/>
<select name="building"> <!--All this x Quantity-->
<option value="TARDIS">TARDIS</option>
<option value="USS Enterprise">USS Enterprise</option>
</select>
<input type="text" name="username"/> <!--And so on...-->
然后相信 POST 字符串将保留元素在 HTML 中写入的顺序,从而允许我在将这些值捕获到数组中后在usernames[0]
服务器rooms[0]
上buildings[0]
回复相等索引的其他条目。
这是否在 100% 的时间内有效?安全吗?我可以想出一些方法来在输入组之间建立严格的关联,但它们涉及到一些轻微刺激性的 javascript 和一些非常令人讨厌的 C#。这似乎可以开箱即用。诶?