jquery DataTables对象数组提供类型错误

时间:2016-02-09 01:45:18

标签: datatables datatables-1.10

我动态生成表格,每次生成表格时,都会创建一个相应的DataTable对象,我将其存储在一个数组中。

tables1 = {};

我创建对象并获取类似的值(为便于查看而分色):

categoryIds.each( function ( value, index ) {
     tables1[value]=jQuery('#tbl' + category_id).DataTable();
});

jQuery.ajax({
    url: url,
    type: 'get',
    }).done(function(data) {
        object = jQuery.parseJSON(data);
        object.each(function(value, index) {
            tables1[value.catid].row.add([value.id, value.title]);
        });

        categoryIds.each( function ( value, index ) {
            tables1[value].draw();
            //typeerror here
        }
});

上面给出了Uncaught TypeError: Cannot read property 'length' of undefined错误,但如果我用try catch包围它就会有效。

一旦我创建了表并想要擦除它们,即使这个简单的函数也会给我一个类型错误:

jQuery.each(tables1, function ( index, value) {
    tables1[index].clear().draw();
} );

我使用的是DataTables 1.10,谷歌搜索这个错误似乎主要是在处理我没有使用的ajax数据源时出现的。

0 个答案:

没有答案