0

我使用以下代码来切换表中列数组的可见性(使用 DataTables JQuery 插件)

function fnShowHide( iCols )
    {
    var i, iCol;
    var oTable = $('#statstable').dataTable();

    for (i = 0; i < iCols.length; i += 1)
        {
        iCol = iCols[i];
        var bVis = oTable.fnSettings().aoColumns[iCol].bVisible;
        oTable.fnSetColumnVis( iCol, bVis ? false : true );
        }
    }

我会让它像这样工作......

<button id="button">
    <a href="javascript:void(0);" onclick="fnShowHide([0,4,10,11,12,13,14,15,16,17,18]);">Simplify</a>
</button>

问题是......如果我在一个页面上有多个这样的按钮,列就会混淆。

如何创建一个显示所有列的新函数,无论其可见性如何,甚至更好,如何使此按钮使所有内容可见,然后关闭数组中的那些?

谢谢 - 这可能很简单,但我对 javascript 还是很陌生。

4

1 回答 1

1

如何拥有以下代码:

<input id="myButton" value="Click Me!" />

$("#myButton").click(function () {
    showAllColumns();
});

function showAllColumns() {

    var i, iCol;
    var oTable = $('#statstable').dataTable();

    var length = /* get the number of columns */;

    for (i = 0; i < length; i += 1) {
        iCol = i;
        oTable.fnSetColumnVis( iCol, true );
    }
}
于 2013-03-23T07:25:16.947 回答