存在しない要素にイベントを追加する Jquery メソッド: 1. [jquery1.9] バージョンより前では、live メソッドを使用します。コードは [$("#id").live("click", function ( )]; 2. [jquery1.9] バージョン以降は On メソッドを使用します
このチュートリアルの動作環境: Windows7 システム、jquery3 .2.1&&jquery1.9 バージョン、DELL G3 コンピューター
jquery存在しない要素を追加するには イベント メソッド:
質問:
jquery で要素にイベントを追加するのは非常に簡単です (クリック イベントの追加など)。 .
$(选择器).click(function(){ );
ただし、ajax ページングはプロジェクト内で行われており、最初のページは直接読み込まれます。上記の方法であれば全く問題ありませんが、ajax ページングを使用すると他のページの内容が読み込まれてしまいます。後から innerHTML で追加され、追加された要素 関連するイベントが存在しない
実は理由も分かりやすいのですが、最初にイベントを追加した時点では、他のページの要素は存在しませんでした。後で innerHTML を通じて追加すると、タグは存在しましたが、対応するイベントがありません。
それで、上記の概要を解決するにはどうすればよいでしょうか? 存在しない要素にイベントを追加します
解決策:
ライブ メソッドを使用する: イベントを存在しない要素にバインドする
$("#id").live("click", function () { alert("ok"); });
ただし、jquery バージョン 1.9 以降、ライブ メソッドは削除されました。 replace live?
Answer 、つまり on メソッドを使用する
$("#id").on("click",function(){ alert("ok"); });
ただし、 on メソッドを使用した後、まだ無効であることがわかります。構文には問題ありません。では、なぜ機能しないのでしょうか? 答えは、このように書くべきではないということです。存在しない要素にイベントを追加する場合は、
次のような書き方をします。
$(document).on("click",'#id', function(){ alert("ok"); });
関連する無料学習の推奨事項: javascript# ##(ビデオ)#########
以上がjqueryで存在しない要素にイベントを追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。