使用fnAdjustColumnSizing时,DataTable不会调整大小

时间:2013-01-04 18:29:30

标签: javascript datatables

我的应用程序已离开窗格和右窗格。右窗格有多个选项卡,每个选项卡都包含一个数据表。

如果用户想要查看右窗格,我可以展开右窗格,因此每当展开右窗格时我都需要扩展我的数据表。

我目前正在使用以下代码来展开/折叠数据表,但这似乎无法正常工作。只有一个数据表(屏幕上显示的当前表)的大小正确,其他表的大小不合适。

有人可以帮我解决这个问题吗?

function onCollapse(e) {
  var table = $.fn.dataTable.fnTables(true);
    if ( table.length > 0 ) {
        setTimeout(function () {
            for(var i=0;i<table.length;i++){
                $(table[i]).dataTable().fnAdjustColumnSizing();
            }
        }, 200);
    }
}

function onExpand(e) {
    var table = $.fn.dataTable.fnTables(true);
    if ( table.length > 0 ) {
        setTimeout(function () {
            for(var i=0;i<table.length;i++){
                $(table[i]).dataTable().fnAdjustColumnSizing();
            }
        }, 200);
    }
}

谢谢, 巴拉尼

1 个答案:

答案 0 :(得分:2)

好的我找到了解决这个问题的方法。

我在(kendo tabstrip)标签的activate事件中添加了以下代码,这解决了这个问题。

    function onActivate(e) {
        var table = $.fn.dataTable.fnTables();
        if ( table.length > 0 ) {
            setTimeout(function () {
                for(var i=0;i<table.length;i++){
                    $(table[i]).dataTable().fnAdjustColumnSizing();
                }
            }, 200);
        }
    }

谢谢, BARANI