<select>
ボックスのAJAXイベントを取得しようとしていますが、選択が変更されたときに何らかの処理が行われます。私は、フォームでの選択ボックスと選択の変更をリッスンするobserve_form
方法が埋め込まれているRails AJAX選択ボックス
<td>
<%= form_tag '', { :id => 'test_form' } do %>
<select name='repo' value="<%= session[:repo] %>" >
<option></option>
<%@repos.sort! { |a,b| a.repo <=> b.repo }
@repos.each do |r| %>
<option <%= session[:repo]==r.repo ? "selected='repo'" : '' %>>
<%=URI.escape(r.repo)%>
</option>
<% end %>
</select>
<% end %>
<%= observe_form('test_form', :frequency => 2,
:update => 'update_results',
:url => {:action => :update_report, :page => 0, :update => 1 },
:loading => "$('res_spin').show()", :complete => "$('res_spin').hide()") %>
</td>
選択ボックスは、テーブルの<td>
タグ内の内部に埋め込まれています。私のコントローラの機能はupdate_report
で、選択が変わると何かができます。何らかの理由で、選択が変更されると、コントローラの機能がまったく呼び出されません。 "Firebugの" オンにされ、このエラーに多くの時間を見てすることは
$(form) is null
var elements = $(form).getElementsByTagName('*'),
は見極めるために、すべてのロジックをコメントアウトし、ポップアップボックスを表示するクリックイベントをオンにするだけです。これは、リスナーが動作していることを示しています。それがうまくいくなら、あなたのロジックに何か間違っている。 – Josh