2011-01-23 8 views
0

私は一緒にフォームを置いていますが、設計上の理由から、フォームはリンクで提出する必要があります。 私はそれを実行する方法を見つけた:form_forは2つのリンクで提出されています。

= link_to_function "Next >>", "$(this).up('form').submit()" 

これがどうなる、と私はこの問題はないと多くのリンクを作成することができます。しかし、どのリンクを使用して私をコントローラに戻すかを区別する方法はわかりません。 リンクに応じて若干異なる演技が必要です。

ご存知ですか?私はいくつかのjavascriptなどを埋め込もうとしましたが、私はそれを理解できませんでした。

おかげで、

アレックス

答えて

1
= link_to_function "Next >>", "$('#hidden_field').value = 1;$(this).up('form').submit()" 
= link_to_function "Next 2 >>", "$('#hidden_field').value = 2;$(this).up('form').submit()" 

あなたはjqueryのを使用していると仮定すると、リンクがクリックされたかに応じて異なる値に隠しフィールドを設定します。結局のところ、link_to_functionへの2番目のパラメータは単にjavascriptにすぎません。

+0

もちろん、jqueryを使わなくても実行できます。 – Satya

+0

ありがとう!私はこのオンラインをかなり研究していて、これをやっていないことを示唆しているのではなく、送信ボタンを "ダウン"させることを提案しているので、簡単な質問です。あなたはそれを何と考えていますか?よりよい解決策、互換性のある賢明な方法などはありますか? – Alex

+0

私はそれを得ることはありません、それはいつも私はそれがnullであることをjavascriptに入れた名前を教えてくれます。私のフォームの他のすべての要素は、[field_name]というタイプの作者で、隠しフィールドを宣言しています:hidden_​​field、:action、#hidden_​​fieldを何に置き換えるべきですか? – Alex

関連する問題