2012-05-22 23 views
0

甲形式可以通過按Submit按鈕提交或選擇select_tag中的項目: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 %> 

是否有可能援引this.form.submit();另一個控制器動作(比create其他)?

我想處理的,而不是在不同的行動不同的意見,:

if params[:commit] == 'Submit' 
    # from submit 
else 
    # from select_tag 
end 
在同一個控制器動作

回答

1

在jQuery的你可以嘗試這樣的:

: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;" 
+0

這還是到控制器中相同的動作,不是嗎? – ohho

+0

是的,這只是設置你可以在控制器中分發的提交參數。希望:) –

+0

ooops我的壞,這完全不是你想要的。嗯。 –

相關問題