1.画网格时,若需要展示序号,则 rownumbers: true;但是数据很多超过9999条,第五位就会展示不全,简单粗暴的处理,在要处理宽度的页面写:
<style type="text/css">
.datagrid-header-rownumber, .datagrid-cell-rownumber{
width: 50px;
}
</style>
。。。就这样就好了。一开始真的是尝试了网上的方法,查来查去都是一样的答案,简直要奔溃。网传的方法1: 写一个扩展方法放在easyUI的源码中jquery.easyui.min.js里,但是我这边报错: $.fn.datagrid.methods[_75c] is not a function。。。。查说是插件冲突。。。。能力不够解决不了。网传方法2:改easyui.css的 .datagrid-header-rownumber,.datagrid-cell-rownumber 下的width,,,,还是没实现。。。。哎,一把辛酸泪。
2.treegrid数据出来但不更新列表;
遇到这个问题是,一开始没有搜索条件时,正常展示,输入搜索条件后明明正确返回数据了但是就是不展示,看网上人都在说根节点问题,然而,我这数据格式是正确的,不然它一开始也不会展示呀,格式如下:
[ {"id":"146236","text":"中国石油天然气运输公司安徽分公司","parentId":"","children":[]}, {"id":"146245","text":"河南中油联合石油天然气销售有限公司","parentId":"","children":[]} ]
搜索方法:$('#companyDatagrid').treegrid('load',{ companyName:name })
给分页打个断点就知道问题了,搜索出来了正确的数据,进入到分页的方法里,又会获取所有数据,,,所以在分页里面处理一下:
if ($.isArray(data)){ // is array
data = {
total: data.length,
rows: data
};
}
// 若是进行了模糊查询,就不分页,直接返回
if ($('#searchCompanyByName').val()){
return data
}
var dg = $(this);
var state = dg.data('treegrid'); // 获取所有的列表数据
...
好了,知道问题在哪就方便处理了。
以上,完毕。