两种形式具有相同的动作

Swa*_*y g 2 html forms ruby-on-rails

我的rails应用程序中有两个表单.它们都存在于单独的选项卡中,当我提交一个表单时,我希望保存另一个表单中的数据.我该怎么办?或者有更好的方法来做这个而不是使用两个单独的形式?有没有更好的方法将长格式分散到多个标签中,当我按下提交时,所有标签中的所有数据都应该达到我的操作.谢谢.

Eli*_*Eli 5

您可以展开单个表单以涵盖两个表单的所有元素.

只要表单标签有效地适合X/HTML,这就完全可以了.

<form action='action1'>
    <!-- All elements from both forms, plus tabs, etc. -->
</form>
Run Code Online (Sandbox Code Playgroud)

唯一要考虑的是,如果该区域内还有另一种形式需要转向另一种行动.例如,如果在其他两个选项卡之间添加第三个选项卡,则会有不同的操作.

你不想最终像:

<form action='action1'>

    <!-- elements from the combined forms -->

    <form action='action2'>
        <!-- elements for a totally different form, not valid inside another form -->    
    </form>

    <!-- more elements from the combined forms -->

</form>
Run Code Online (Sandbox Code Playgroud)

在这种情况下,最好在提交时使用JavaScript合并这两个表单.

jQuery(jquery.com)会让这很容易.例如,您可以序列化两个表单,然后连接它们并通过post或get将结果发送到服务器.

请参见http://docs.jquery.com/Ajax/serialize.

可能有更好的方法可以做到这一点,但我想不出任何偏见.