アプリに JQuery-1.6.1 を使用していたときに、次のコード行がありました。
$('li.step .step_type.VerifyTableContentsStep input[name*=element_name]').live('autocompletechange', buildTableContents);
JQuery-1.7.1 にアップグレードした後、その行は機能しなくなりました。ドキュメントで .live() が廃止され、代わりに .on() を使用することを読みました。私はそれを試し、ドキュメントに従って、次のように行を変更しました。
$(document).on('autocompletechange', 'li.step .step_type.VerifyTableContentsStep input[name*=element_name]', buildTableContents);
しかし、それでもうまくいきません。誰にもアイデアはありますか?私は文書に従って手紙を書きました。ありがとう!
更新: ここに私の .haml コードがあります:
.table_contents_container
= select_tag :add_column, options_for_select(table_contents.headers_without_data.unshift(['hidden columns...'])), :class => 'add_column_selector'
%table
%tr
%th.action_column
= link_to '', '#', :class => 'sub_item_action add_column', :tabindex => 999
- table_contents.rows.first.all_cells.each do |cells|
%th.content_column{ :class => "#{'no_data' if cells.no_data?}", 'data-column-id' => cells.id }
= link_to '', '#', :class => 'sub_item_action inline_delete', :tabindex => 999
%span= cells.name
%th
- table_contents.rows.each do |row|
%tr
%td.action_column
- if input_elements
= link_to '', '#', :class => 'sub_item_action inline_add', :tabindex => 999
= link_to '', '#', :class => 'sub_item_action inline_delete', :tabindex => 999
- else
- row.all_cells.each do |cell|
%td.content_column{ :class => "#{'no_data' if cell.no_data?}", 'data-column-id' => cell.id }
- if input_elements
= text_field_tag "step[table_contents][][#{cell.id}]", cell.value, :onfocus =>"if(this.value=='Table Value...') this.value='';",:placeholder => 'Table Value...', :onblur => "if(this.value=='') this.value='Table Value...'", :disabled => cell.no_data?
- else
= h ParsedLine.new(cell.value).result
%td