一直试图解决这个问题已经有一段时间了,并且想知道是否有办法在rails中执行此操作而不是使用jquery / javascript(尽管尝试使用jquery已经证明是不成功的。
我有两个form_tags搜索不同的api,每个都有自己的submit_tag,工作正常。我想要实现的是能够使用一个submit_tag,然后提交已填写的表单
<h3>Search Movies</h3>
<%= form_tag main_results_path, :method => "get", :id => 'submitMovie' do %>
<%= text_field_tag 'search', nil, :placeholder => 'Enter Film Name Here.....', :id => 'movieForm' %>
<%= submit_tag "search" %>
<% end %>
<h1>OR</h1>
<h3>Search Albums</h3>
<%= form_tag album_album_results_path, :method => "get", :id => 'submitAlbum' do %>
<%= text_field_tag 'search', nil, :placeholder => 'Enter Artist Name here.....', :id => 'albumForm' %>
<%= submit_tag "search" %>
<% end %>
这可以在铁轨中使用吗?
由于
答案 0 :(得分:2)
表单的提交方式与Rails无关:表单由浏览器处理。单击按钮将始终提交按钮所属的表单。如果你需要一个表格之外的按钮Javascript / jQuery是要走的路:
$(document).ready(function(){
$('#yourButton').click(function(){
var formToSubmit;
if( $('#movieForm').val() ){
formToSubmit='#submitMovie';
}
else if( $('#albumForm').val() ){
formToSubmit='#submitAlbum';
}
if(formToSubmit!==null){
$(formToSubmit).submit();
}
return false;
});
});