#
live()
またはon()
コールバックの中でセレクタに問題があります。live/onを使用するとjQueryオブジェクトメソッドが失敗する
$(document).on('click',".dfield_span_after", function(event) {
var in_id = $(this).attr('data-in_id');
var field = $('#'+in_id) // this line
field.show();
}
field.show()
しかし、このように選択し、全く動作しません:
var field = $('[id='+in_id+']')
正常に動作します
。
これはjQueryの問題(いくつかのバージョンが使用された)ですか、それとも私が間違ったことですか?
更新日: このような状況では、この問題は解決しない場合があります。私はコードのように相互作用するいくつかの要素を持つページを持っています。このコードはリンクをクリックする直前に正常に動作し、AJAXによっていくつかの要素が生成され、ポップアップで表示されます。ポップアップの要素が悪くなっても、ページの残りの部分はまだ問題ありません。
おかげ
何かが間違っています。var in_id = $(this)).attr( 'data-in_id'); ' – matino
私のために働く、http://jsfiddle.net/59ayt/ – Andrew
更新をお読みください。 idはajaxで生成されたコンテンツの後にのみ動作します。例えば 'console.log(field)'は私に必要な正確な要素を与えてくれるので、 'field.show()'を除くすべてのものはうまくいくようです。 –