可以通过按Submit
按钮或选择select_tag
中的项目来提交表单:
<% form_tag url_for(:action => 'create') do %>
<%= select_tag :names, options_from_collection_for_select(@name_list, :id, :name, @name),
{ :onchange => "this.form.submit();" } %>
<%= submit_tag 'Submit' %>
<% end %>
是否可以在create
中调用另一个控制器操作(this.form.submit();
除外)?
我想在不同的操作中处理不同的提交,而不是:
if params[:commit] == 'Submit'
# from submit
else
# from select_tag
end
在同一个控制器动作中。
答案 0 :(得分:1)
:onchange => "$.post(<alternative_url>, $(this).form.serialize()); return false;"
[我的早期回应(未回答问题)] 如何在提交之前使用js设置提交输入值?
jQuery的:
:onchange => "$(this).form.find('input[name="commit"]').val('select'); $(this).form.submit();"
普通JS:
:onchange => "document.getElementById(<SubmitButtonId>).value = 'select'; this.form.submit;"