我在一个页面上有 4 个表格。表格 1 必须与表格 2,3 或 4 一起提交,具体取决于用户选择。
jQuery.submit()
只能做一种形式。
ajax 发布表单不是一种选择
我只能想在提交后一个表单之前将Form 1的内容添加到另一个表单中。
还有其他方法吗?
更新:
使用 4 个表单而不是 1 个表单的原因是我正在独立验证每个表单,因为 3 个表单中的 2 个是隐藏在视图之外的。
我在一个页面上有 4 个表格。表格 1 必须与表格 2,3 或 4 一起提交,具体取决于用户选择。
jQuery.submit()
只能做一种形式。
ajax 发布表单不是一种选择
我只能想在提交后一个表单之前将Form 1的内容添加到另一个表单中。
还有其他方法吗?
更新:
使用 4 个表单而不是 1 个表单的原因是我正在独立验证每个表单,因为 3 个表单中的 2 个是隐藏在视图之外的。
如果一个表单依赖于另外两个表单,听起来它们实际上是同一个表单的一部分,后端应该只弄清楚那个巨型表单的哪些部分(具有不同的数据集,但对于一个表单)是需要的。同样,最好不要单独依赖 javascript,因此这样做可以为您提供自动更强大的解决方案。
更新如果您有多个仅共享数据的表单(例如它们可以更改 form3 需要的 form1 和 form2 上的数据),那么将这些共享的东西放在隐藏元素中并保留表单会更稳定,尤其是在验证方面分离。让用户输入将要提交和使用的数据,然后将其隐藏起来并不是最佳选择,因为他们更容易犯输入错误(他们无法轻松查看,并且他们可能不理解将全部提交)。将< input type="hidden" />
s 用于共享信息可以缓解这种情况,因为他们无法意外更改它。(或者将其存储在会话中或任何您想要的内容中。重点是,防止他们更改您将依赖的信息,并且他们无法轻易发现错误。)
由于表单已提交并且您正在离开页面,因此您可以在提交之前删除不必要的字段。只需要一张表格。