[前][次][番号順一覧][スレッド一覧]

rails:1382

From: insight <insight.insight@g...>
Date: Fri, 21 Jul 2006 22:59:18 +0900
Subject: [rails:1382] text_field_with_auto_completeでのユーザー選択時イベント取得について

はじめまして。斎藤といいます。
まだまだrailsを使いはじめて間もないので勉強中ですが、早速、タイトルの通りの質問があり、
どなたか教えていただけないかと思い投稿しました。

質問なんですが、ある商品リストがあり、そのリストには1〜多数の使用ユーザがあり、
それぞれ商品リストテーブル、使用者テーブルの2つが1対多のリレーションを結んでいる
とします。
AJAXの機能を使い、まずテキストフィールドで商品名(もしくは商品コード)をオートコンプ
リートで入力補完させ、ユーザーがオートコンプリートで表示された一覧から選んだら、
テキストフィールドの下部に使用者の一覧が抽出され表示(これもAJAXで動的に表示)
というようなアプリケーションを作ろうとしています。

そこで、まず商品名の補完入力にtext_field_with_auto_completeを使い、その更新時の
フックとして、:after_update_elementを使用したらいいだろう、と思いました。
そこで、テスト用として以下のように入力しました。
<%= text_field_with_auto_complete("product","name",{},
             :after_update_element=>"function(element,value){alert('selected!')}")
%>
当方の意図としては、ユーザーがオートコンプリートによる一覧を選択した時に、
alertでボックスを表示する、という動作を意図しています。
しかし、上記のコードでは補完一覧は表示されるものの、それを選んでも何の反応も
ありません。
本来は、上記テストがうまくいけば、
<%= text_field_with_auto_complete("product","name",{},
            :after_update_element=>"function(element,value){"+remote_function(

:url=>{:action=>:update_list},:update=>:lists,:with=>"'name='+element.value")
                 +";}") %>
のような感じでうまくアクションに渡せないかな、と考えています。

<%= observe_field "product_name",
:update=>:lists,:url=>{:action=>:update_list} %>
のようにしてもいいのかもしれませんが・・・後々、前述の方法が使えるほうが応用が
効かないかな、と考えて、なんとか前述の:after_update_elementを使った方法ができない
か、どこで間違っているのか、どうか教えて下さい。
よろしくお願いします。

--
ML: rails@r...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]