EasyUI 中 DataGrid 控件 是我们经常用到的控件之一,
但是 DataGrid 控件 在绑定显示列时却不支持对象属性绑定。
模型如下:
public class Manager implements java.io.Serializable {
private Integer id;
private Role role;
private String loginName;
private String password;
private int status;
private Date lastDate;
private Date createAt;
private String remarks;
//省略 get and set
}
其中Role 是一个对象
<table id="manager_datagrid">
<thead>
<tr>
<th data-options="field:'loginName'">帐号</th>
<th data-options="field:'role',formatter:managerRoleFormat">所属岗位</th>
<th data-options="field:'createAt'">创建时间</th>
<th data-options="field:'lastDate'">最后登录时间</th>
<th data-options="field:'status',formatter:managerStatusFormat">状态</th>
<th data-options="field:'remarks'">备注</th>
</tr>
</thead>
</table>
function managerRoleFormat(val,row){ if(val) return val.roleName; else return ""; }
function managerStatusFormat(val,row){
switch(val){
case 0: return '停用';
case 1: return '正常';
default: return '';
}
}
这样通过 EasyUI 给我们提供的 formatter 函数 我们就可以实现 对象属性的绑定.