一.方法1(不推荐)
适应以下需求:
1.当表格没有数据时,把datagrid隐藏;有数据的时候显示
2.表格不分页,无需显示分页栏
3.datagrid的高度由内容撑开(固定高度,无数据时显示空白也可,有数据要隐藏不行,因为本方法实质是隐藏表头,分页)
首先看第一点:大多数人都是这样想的,即单纯的给datagrid <table>动态设置display:none控制显示隐藏;这种方法是不生效的(关于理由有兴趣的可以自己查下)。
以上是没有数据的情况下,为table设置了display:none,height没有设置,根据内容(没有数据的时候)撑开;
此时可以注意到,由于height是自适应的,要隐藏datagrid,只需隐藏表头,分页栏即可。
解决以上问题只需下面几行代码:
$("#quotaList").datagrid({showHeader:false,pagination:false});
从datagrid官方文档可以看到,dataGrid有showHeader,pagination这两个属性,只要设置false即可隐藏。
有时候多查看官方文档往往是解决问题的最快途径
二 .方法2(推荐)
其实了解了easyUI的继承关系后,可以更方面的控制datagrid的显示隐藏。上面的方法走了个弯路......
实际上datagrid获取easyui的panel,再调用jQuery的hide()或者show()就可以了~
$("#tb").datagrid("getPanel").hide();//隐藏
$("#tb").datagrid("getPanel").show();//显示