easyUI-datagrid属性设置display:none,表头不显示

<div class="box1">
        <div class="dg1Box" style="margin-top:15px; margin-left:25px;">
            <table id="dg1" style="575px;"></table>
        </div>
    </div>

    <div class="box2" style="display:none;">
        <div class="dg2Box" style="margin-top:15px; margin-left:25px;">
            <table id="dg2" style="575px;"></table>
        </div>
    </div>

这样布局tab之后在JS中绑定datagrid:

    $('#dg1').datagrid({
        columns: [[
            { field: 'CompoundName', title: '组分名',  130, align: 'center', resizable:false },
            { field: 'CompoundMofo', title: '分子式',  130, align: 'center', resizable: false },
            { field: 'CompoundGraph', title: 'CAS号',  130, align: 'center', resizable: false },
            { field: 'operate', title: '操作',  130, align: 'center', resizable: false }
        ]],
        rownumbers: true
    });

    $('#dg2').datagrid({
        columns: [[
            { field: 'TBCompoundID', title: '组分库Id',  130, align: 'center', resizable: false },
            { field: 'HeaderText', title: '表头',  130, align: 'center', resizable: false },
            { field: 'Format', title: '格式',  130, align: 'center', resizable: false },
            { field: 'operate', title: '操作',  130, align: 'center', resizable: false }
        ]],
        rownumbers: true
    });

切换到第二个表格的时候,表头不显示,可能是display为none的时候datagrid也会被隐藏

只要在显示当前div的时候,执行这条代码$("#dg2").datagrid("resize");  就可以啦。

原文地址:https://www.cnblogs.com/wujiaqi/p/6860619.html