2

ajax/js を介してページ コンテンツを更新するリモート メソッドを呼び出そうとしています。私はすでに疲れているか、haml がプロトタイプを介してクエリ フィールドの値を送信するために次のコードを正しく解析していません。何か案は?

- form_remote_tag(:url => {:controller => "search", :action => "line"},:with => "'query=' + $('query').value" ) do
  %input{:type => 'text', :id => 'query'}
  %input{:type => 'submit', :value => 'Search'}

どうもありがとう!

t

4

2 に答える 2

1

:withオプション ハッシュの一部としてを渡してみてください。

- form_remote_tag({ :url => {:controller => "search", :action => "line"}, :with => "'query=' + $('query').value" }) do

それでもうまくいかない場合は、問題をデバッグしてください: 生成された html を見てください。ID を持つテキスト フィールドは、queryその ID を持つページ内の唯一の要素ですか? jsコードは正しいですか?Firebug コンソールを使用$('query').valueして、テキスト フィールドに入力した内容が返されるようにします。

まだ立ち往生していますか?生成された html を質問に追加してください。

編集:入力タグには属性がありませqueryん。name名前がないと、JavaScript ヘルパー コードはフォーム フィールドをシリアル化するときにそのフィールドをスキップします...また、コードは必要ありません:with

%input{:type => 'text', :id => 'query', :name => 'query'}
于 2010-02-22T02:52:44.280 に答える
1

あなたは試しましたか

= form_remote_tag

それ以外の

- form_remote_tag

私自身、HAMLは初めてですが、フォームタグを実行するだけでなく、実際に生成する必要があるという印象を受けました...

于 2010-02-22T02:10:58.547 に答える