2009-08-20 19 views
4

これはかなり基本的な質問ですが、私はそれに対して良い答えを見つけることができません。私は私のRailsアプリケーションに「フラグを立てる」ことができる多くのオブジェクトがあるページを持っています。フラグボタンをクリックすると、確認や小さなフォームなどの小さなボックスが表示されます。問題は、RJSテンプレートを使用してこれを行う方法を理解できないことです。Ruby on Railsを使ったAjaxのポップアップボックス

私はpage.insert_htmlを使用していますが、これにはIDが必要です。この作業を行うために、私は一意のIDにフラグを付けることができるそれぞれのものを割り当てなければなりませんでした。これは非常にきれいには見えず、1つのフォームだけを表示できることと、送信時にボックスが消えることに疑問を抱かせています。もっと簡単な解決法がありますか?私は本質的に、フラグのためにSOに表示されるフラグボックスに似たものを作成したいと考えています。申し訳ありませんが、私は比較的RJSテンプレートを初めて使用しています。ありがとう。

答えて

4

jquery faceboxでこれを行うことができます。この種のものはrjsではなく、もっと邪魔にならないjavascriptで行われる方が良いでしょう。あなたのリンクにfacebox relを添付することができます。クリックすると、ポップアップウィンドウでフォームを開くことができます。

あなたのポップアップウィンドウでは、フォームを実行してリダイレクトすることができます。ユーザーは、ポップアップウィンドウが開いてオーバーレイがページの上に置かれたときにそのボタンをクリックするだけで、効果を持たないか、フォームを閉じます(設定で選択したと思います)。

音が出るのが好きです。

+0

素晴らしいですが、レール用のライトボックスプラグインがかなりあることに気付きました。あなたは他のものよりもfaceboxをおすすめしますか? prototype/scriptaculous/iBoxなどの魅力的なものは何もないと思う。 – Anon

+0

私はいくつかを使用しました。これは間違いなく最高でした。使いやすく見栄えが良い。 – nitecoder

2

jQuery UIには、このようなことで本当にうまく動作するダイアログウィジェットもあります。素敵なウィジェットです。jQuery UIライブラリをカスタマイズして、ブラウザにスリムなJavaScriptを渡したい場合は除外します。その他の便利なウィジェット(アコーディオン、プログレスバーなど)

jQuery Dialog

関連する問題