0

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

如果用户只想查看右窗格,我提供了展开右窗格的功能,因此每当右窗格展开时我都需要展开我的数据表。

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

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

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);
    }
}

谢谢, 巴拉尼

4

1 回答 1

2

好的,我想出了解决此问题的方法。

我在(kendo tabstrip)选项卡的激活事件上添加了以下代码,这解决了这个问题。

    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);
        }
    }

谢谢, 巴拉尼

于 2013-01-04T18:48:52.400 回答