擬似コードで申し訳ありませんが、元のコードをここに投稿することはできません (会社のポリシー)。
私はjavascriptに2つの「クラス」を持っています。クラスCLS2は、サーバーから来るHTMLをDIVに入力するために使用します(実際にはテーブルです)。これには、jquery でメソッド LOAD を使用しています。
クラスCLS1はCLS2を呼び出してHTMLテーブルをロードし、jqueryメソッドFINDでテーブルからいくつかの情報を取得しようとした後.
私は何が起こっているのか知っています。テーブル内でこれらの情報を取得しようとすると、HTML テーブルがまだ準備されていないため、これを行うことができません。
しかし、jquery メソッド WHEN を使用している場合、私はこれを行うことができるはずだと推測しました。しかし、これまでのところ機能していません。
jquery LOAD メソッドでコールバックを使用するとすべて正常に動作しますが、WHEN を使用している場合、HTML テーブルの準備が整うのを待っていません。
私は何かを忘れていますか?
jquery LOAD メソッドから戻りました。コンテンツの準備ができているかどうか、この返品を確認することはできますか? console.log(retParam);
CLS2:
var cls2 = (function ($) {
return {
load: function() {
return this.populateDiv();
},
populateDiv: function() {
var ret = $('#content').load('url', function(){
// IF I USE THE JQUERY METHOD FIND HERE WORKS FINE
});
return ret;
}
};
}(jQuery));
CLS1:
var cls1 = (function ($) {
return {
init: function(){
this.config();
},
config: function() {
$.when(cls2.load()).then(this.doPagination());
},
doPagination: function(retParam) {
console.log(retParam);
var val = $('#datatable').find('.tdActive').val();
}
};
}(jQuery));
JQUERY対応
$(document).ready(){
cls1.init();
}