javascript - 動的ロードとイベントのバインド後にイベントが機能しないことについての質問
淡淡烟草味
淡淡烟草味 2017-07-05 11:05:56
0
5
1094

Ajax を使用して 3 つの p ボックスを動的に作成した後、クリック イベントをボックスにバインドすると機能しないのはなぜですか? ajax の作成時にイベントをバインドすることのみが有用ですか?これにより 3 回バインドされます。これはなぜですか?もっと良い方法はありますか?

淡淡烟草味
淡淡烟草味

全員に返信(5)
阿神

たとえば、jquery の実装を見てみましょう

リーリー リーリー リーリー
いいねを押す +0
Ty80

$(document).on('click','#a',function(){ //TODO }); 1階の回答を拝借すると、まず親要素を見つけてからバインドできると思います

いいねを押す +0
仅有的幸福

動的にロードされた DOM で onclick を使用しても機能しません。 $(document).on('click','#a',function(){} ) を使用すると機能します。試してみてください。

いいねを押す +0
phpcn_u1582

これを実現するには、たとえばイベント委任を使用できます

リーリー

ラッパーにリスト(.list)を追加したい場合は、次のようにデリゲートを書くことができます(簡単な書き方):

リーリー
いいねを押す +0
过去多啦不再A梦

JQ の on メソッドとデリゲート メソッドを使用できます。ネイティブの場合は、イベント委任を使用します。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート