天天看点

当使用EasyUI时,需要的Field属性是子属性时候,除了formatter和修改jquery.easyui.min.js的方法

说起来这个方法也不是特别的好,但是当你需要在页面上使用过滤Filter的时候,这个方法还是相当有用的.

以我本地为例

Entity中使用的是hibernate联合主键,此时主键id中包含两个属性,一个day,一个sitename,如下:

{"id":{"siteName":"test.com","day":"2016-04-25"}
           

这里顺便提一下formatter方式

我想在datagrid中拿到test

1:formatter

{field:'id',title:'sitename',align:"center",width:100,

    formatter: function(value,row){

    return "value.siteName";

}

   }

2:修改jquery.easyui.min.js中的某行代码,在此不表,百度一下你就知道.

3:就是我要说的,在Entity中加入一个新字段,如果你用的springmvc的话加一个注解@Transient就好

例如private String siteName;

@Transient

public String getId_siteName() {

return id_siteName;

}

public void setId_siteName(String id_siteName) {

this.id_siteName = id_siteName;

}

然后在你的service中,foreach一下每个取出的实体,进行赋值

for (JobSiteDay jobSiteDay : list) {

jobSiteDay.setId_siteName(jobSiteDay.getId().getSiteName());

}

最后页面中field就写id_siteName

至此使用datagrid进行filter操作完全没有问题.

好的,就这样了,谢谢