こんにちは、データベース値で動的に読み込まれる DOM 要素を取得する際に問題があり、ページの読み込み中に利用できませんでした。ページの読み込み中に数秒の遅延がかかるためです。そのため、JQuery はページの読み込み中に要素を認識しません。
要素がロードされた後、要素にアクセスするにはどうすればよいですか?
以下のスニペットを使用し、この中にコードを記述します
$(document).ready(function() {
//Logic goes here
}
これは load イベントの後に実行されます
最初に DOM に読み込まれる要素について話している場合は、コードをready関数でラップします。
$(document).ready(function(){
//Code here
}
これにより、DOM が完全に読み込まれるまで、JavaScript コードが実行されなくなりました。
jQuery ajax呼び出しの 1 つを使用して要素を動的にロードしている場合は、複数のコールバックを指定して、それがいつ完了したかを知ることができます。
動的に読み込まれる一部の要素には、 DOM イベントをバインドするときにライブイベント ハンドラーが必要になる場合があります。例えば:
$(".myElem").live("click", function(){
//This event binds to elements loaded dynamically, too
}