easyUI的datagrid封装的挺好用的。我在使用datagrid时候,感觉比较困难的是关于它的分页。这个分页,我在项目中是结合nutz来做的。在后台实现分页,前台展示。下面详细说一下。
用到datagrid,最高效的方法就是找到合适的demo,复制粘贴。然后对着easyUI的api选择性的挑出来放到js文件中,可以让前端页面更加简洁。datagrid有字段名,叫columns。
url: 这个是数据源,可以写一个servlet的文件名。不需要加后缀。servlet输出的格式为json格式。
queryParams.用来在接收远程数据的时候,接收额外的参数。
var queryParams=$("#dictionary").datagrid('options').queryParams;
queryParams.id=node.id;
loadFilter.在实现点击树表,触发datagrid重新加载就是依靠这个方法和queryParams。loadfilter方法返回的数据为data。有一个要求,就是data必须包含rows和total,它们有利于后台接收分页需要的参数。所以,当传输给datagrid的json数据没有total和rows时候,需要搭设rows,total格式的json数据返回。
$('#dictionary').datagrid({
loadFilter: function(data){
if(data == -1){
alert("数据传输出错");
}else{
data:{
total: ,
rows:data
}
return data;
}
},
它相当于datagrid的一个数据过滤器。而queryParams则是附带传进数据源url的数据。