JQuery treeTable と JQuery データテーブルの両方であるテーブルを同時に構築しようとしています。注意してください、私の問題は両方の使い方ではありません。「表」を埋めると問題なく表示できます。
しかし、ツリーテーブルの構築コードに空の配列を送信すると、エラーが発生します。
問題の行は次のとおりです。
$('#table tbody tr').each(function(){
console.log(this);
if(mytable.fnGetData(mytable.fnGetPosition(this))[4]){
console.log('in set child before');
$(this).addClass('child-of-'+mytable.fnGetData(mytable.fnGetPosition(this))[4]);
console.log('in set child after');
}
$(this).attr('id', mytable.fnGetData(mytable.fnGetPosition(this))[0]);
});
テーブルにデータを入力しない場合、私の希望にもかかわらず、プロセスは上記のループに進み、
console.log(this)
プリントアウト:
<tr class="odd"><td valign="top" colspan="4" class="dataTables_empty">No data available in table</td></tr>
行データが予期されたものではないため、エラーが発生します。
質問したいのですが、それが入力された「データ」であるか、空の警告行であるかを制御する最もエレガントな方法は何ですか? 「dataTables_empty」の「クラス」をチェックするのは適切な方法ですか?
または、テーブルが空の場合に上記のループを通過しない他の方法はありますか?