blog list

2014-03-04 ( 火 ) jQuery

Ajaxで更新した値にjQueryが動作してくれない問題の解決策

タグ: ,

Ajaxでとってきたデータに対してjQueryのclickイベントかまそうとしたら動かなかった。

ちょっとハマったのでメモしておきます。


参考サイト[console.lealog()]

onload後に構築した要素に対してイベントや関数が効かないときには

ダメな例

$('#hoge a').click(function(){
 console.log('ng');
});

いい例

$('#hoge a').live('click', function(){
 console.log('ok');
});

bindでは最初から表示されているものだけがリストに登録されて対象になるみたいですね。

だから後からAjaxで書き換えたソースには効かないと。

一方でliveでは永続的にイベント発生時にマッチする要素に適用されるとのこと。


参考サイト

jQuery日本語リファレンス


タグ: ,

comments

コメントを入力する





次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

category