2011-12-08 17 views
0

私は同じアクションを実行する2つの独立したフォームを持っていますが、他のものより多くのことをする必要があります。だから、コントローラで、異なるリクエストを処理するためにそのアクションを呼び出したコントローラがわかるようにする必要があります。だから私の質問は次のとおりです。フォームで2つのsubmitButtonを持つGrailsフォーム

、2 <g:submitButton name="search" value="More Results"/> <g:submitButton name="searchAndMore" value="More Results"/>

でアクションを呼び出した1知る方法はありますか?

+0

ups申し訳ありませんが、最初は気にしませんでしたが、そこには同じ質問があります:http://stackoverflow.com/questions/2740439/get-name-of-clicked-submit-ボタンイングライル。 – recoInrelax

答えて

1

、あなたの送信ボタンは、マークアップでボタンと同じ名前と値を持つリクエストパラメータとして存在することになります。

params.search == "More Results" 

params.searchAndMore == "More Results" 

if (params.containsKey('search')) 
// or 
if (params.search) 
1

が役に立つかもしれ:あなたのコントローラで

<g:form> 
    ... 
    <g:actionSubmit action="search" value="Search"/> 
    <g:actionSubmit action="searchAndMore" value="More Results"/> 
</g:form> 
+0

彼は2つの異なるアクションではなく、同じアクションを実行します。しかし、おそらくこの答えは、コントローラの設計が異なることに繋がります。 –

関連する問題