我需要在表单中有一个表单。基本上,我有一个主窗体,在主窗体内是一个按钮,当单击时,出现一个带有两个文本字段的slidedown,它带有用户名和密码。点击提交后,我希望它调用控制器并POST数据,以便进一步处理。然后,主表格将在稍后提交。
我目前做了什么,
main.html.erb包含基本form_tag
。里面是一个<%= link_to whatever_path, remote = true do %>
的按钮。在任何指向contoller#whatever
#main.html.erb
<%= form_tag something_launch_path, multipart: true, :novalidate => 'novalidate', :method => 'post', :remote => true do %>
<div class="col-md-2 col-md-offset-4">
<%= link_to whatever_path, remote: true do %>
<button class="btn btn-default">Cool Button</button>
<% end %>
</div>
<div class="col-md-6 col-md-offset-2" id="task-form" style="display:none;"></div>\
在路由中,无论路由到controller#whatever
,所以现在应该调用whatever.js.erb
文件?!
#whatever.js.erb
$('#task-form').html("<%= escape_javascript render ('form') %>");
$('#task-form').slideDown(350);
现在我有一个_form.html.erb文件,其中包含表单。
#form.html.erb
<%= simple_form_for whatever_path, remote: true do |f| %>
<%= f.input :username, as: :text %>
<%= f.input :password, as: :text %>
<%= f.button :submit %>
<% end %>
问题:
当我按下按钮时,会出现滑动窗体,但是当我点击提交时,它也会发送主窗体。
1.是否可以单独将表格提交给控制人?这就是我在这里尝试的。
2.另外,whatever
会在提交按钮上打印出来。
simple_form
,而不是简单的form_tag
html?