jQuery MiniUI

标题: miniui 排序问题 [打印本页]

作者: 小瓶盖    时间: 2013-5-16 10:30:55     标题: miniui 排序问题

我能定义一个属性专门存取后台dao用于排序的字段
    因为我的<div field="personName"> 按照现在的 sortField接收到的是personName  后台需自己转换为person_Name才可以排序。求大神解决,你们出到过吗???专门处理,,,,在线等。

作者: 小瓶盖    时间: 2013-5-16 11:11:20

缘鸾传o0 发表于 2013-5-16 11:09
佩服,佩服!

大哥。。。你这是。。。。玩我啊
作者: niko    时间: 2013-5-16 11:31:58

1.field="personName" 我们会按这个字段显示内容,点击排序时,也把personName传递到后台
2.你应该按personName排序,如果有出入,可以随意调整,比如用person_Name
  这个转换过程你后台自己处理,因为我们不知道到底对应什么字段。
作者: factory    时间: 2013-5-16 11:34:49

小瓶盖 发表于 2013-5-16 11:11
大哥。。。你这是。。。。玩我啊

上面是划水的吧,帖子删了,
你可以这样,监听onheadercellclick 事件,然后grid.sortBy("xxxx", "desc");  xxx 是你需要排序的字段

这个方法你可以自由安排需要排序哪个字段
作者: 小瓶盖    时间: 2013-5-16 11:49:43

factory 发表于 2013-5-16 11:34
上面是划水的吧,帖子删了,
你可以这样,监听onheadercellclick 事件,然后grid.sortBy("xxxx", "desc") ...

onheadercellclick这个事件需要我在每一列的div都要去加吗?还是这个事件可以获取点击的排序列
作者: chenxing    时间: 2013-5-16 12:06:51

页面标签 加上 allowSort="true"
后台String sortorder=request.getParameter("sortOrder");
                String sortfield=request.getParameter("sortField");
                if("null".equals(sortorder)||"".equals(sortorder)||sortorder==null){
                        sortorder="desc";
                }
                if("null".equals(sortfield)||"".equals(sortfield)||sortfield==null){
                        sortfield="communicate_Id";
                }
communicate_Id:是默认排序的字段
SQL: order by ${sortfield} ${sortorder}
作者: factory    时间: 2013-5-16 12:07:44

小瓶盖 发表于 2013-5-16 11:49
onheadercellclick这个事件需要我在每一列的div都要去加吗?还是这个事件可以获取点击的排序列 ...

这个是表格的事件, 写在表格上即可,不是写在列上的  onheadercellclick="onheadercellclick "

function onheadercellclick(e){
  var column = e.column
}
作者: 小瓶盖    时间: 2013-5-16 12:08:24

chenxing 发表于 2013-5-16 12:06
页面标签 加上 allowSort="true"
后台String sortorder=request.getParameter("sortOrder");
                String sor ...

communicate_Id  这个是页面<div>里面的属性吗
作者: factory    时间: 2013-5-16 12:13:22

小瓶盖 发表于 2013-5-16 12:08
communicate_Id  这个是页面里面的属性吗

其实就是你后台自己处理,你想根据哪个字段排序,你后台处理下好了
作者: 小瓶盖    时间: 2013-5-16 12:15:21

factory 发表于 2013-5-16 12:07
这个是表格的事件, 写在表格上即可,不是写在列上的  onheadercellclick="onheadercellclick "

function ...

可是我点击了之后没有触发事件啊,直接进了后台的。
作者: 小瓶盖    时间: 2013-5-16 12:18:55

factory 发表于 2013-5-16 12:13
其实就是你后台自己处理,你想根据哪个字段排序,你后台处理下好了

我后台是处理了的,就是我想怎么直接在页面得到后台直接用的排序字段,我需要person_name 而不是personName,因为String sortField = this.getServletRequest().getParameter("sortField");这个只能到<div field="personName"> field的value就是personName  
作者: 小瓶盖    时间: 2013-5-16 12:34:22

factory 发表于 2013-5-16 12:07
这个是表格的事件, 写在表格上即可,不是写在列上的  onheadercellclick="onheadercellclick "

function ...

miniui的版本会导致onheadercellclick="onheadercellclick "这个事件不起作用吧,我怎么查看我们使用的是那个版本的miniui呢?
作者: factory    时间: 2013-5-16 12:44:50

小瓶盖 发表于 2013-5-16 12:34
miniui的版本会导致onheadercellclick="onheadercellclick "这个事件不起作用吧,我怎么查看我们使用的是 ...

miniui.js看版本

grid.sortBy("person_name", "desc");
作者: 小瓶盖    时间: 2013-5-16 12:50:49

factory 发表于 2013-5-16 12:44
miniui.js看版本

grid.sortBy("person_name", "desc");

其实我想说的是直接不进这个事件,可能是版本的问题吧。
作者: chenxing    时间: 2013-5-16 13:11:41

小瓶盖 发表于 2013-5-16 12:08
communicate_Id  这个是页面里面的属性吗

是后台 默认排序的字段sortfield=" “  引号里是默认排序的字段  我的默认字段是communicate_Id
作者: 小瓶盖    时间: 2013-5-16 13:40:14

factory 发表于 2013-5-16 12:07
这个是表格的事件, 写在表格上即可,不是写在列上的  onheadercellclick="onheadercellclick "

function ...

想问一下,我可以通过修改你们的js然后后台String sortField = this.getServletRequest().getParameter("sortField");获取的时候不获取field的值,获取我们自己定义的比如pxField="person_name"值吗?
作者: factory    时间: 2013-5-16 14:02:16

小瓶盖 发表于 2013-5-16 13:40
想问一下,我可以通过修改你们的js然后后台String sortField = this.getServletRequest().getParameter(" ...

grid.sortBy("person_name", "desc");

然后后台String sortField = Request["sortField"];

就可以获得到你的“person_name”了
作者: 小瓶盖    时间: 2013-5-16 14:49:10

factory 发表于 2013-5-16 14:02
grid.sortBy("person_name", "desc");

然后后台String sortField = Request["sortField"];

我现在要做的是,
列表的属性值 是 myMini ,但是 在点击myMini 列头的时候
提交到后台的排序属性名是my_mini
我怎么实现
作者: factory    时间: 2013-5-16 14:55:22

小瓶盖 发表于 2013-5-16 14:49
我现在要做的是,
列表的属性值 是 myMini ,但是 在点击myMini 列头的时候
提交到后台的排序属性名是my_ ...

监听onheadercellclick="headercellclick"  点击表格头部事件

function headercellclick(e){
    var column = e.column
    if(column.field == myMini){
         grid.sortBy("my_mini", "desc")
    }
}
作者: 小瓶盖    时间: 2013-5-16 15:00:26

factory 发表于 2013-5-16 14:55
监听onheadercellclick="headercellclick"  点击表格头部事件

function headercellclick(e){

。这样是可以, 但是表头就不会显示 是排序 还是降序( 没有上or下的三角形), 而却不能动态的实现排序和升序
作者: 小瓶盖    时间: 2013-5-16 15:10:48

factory 发表于 2013-5-16 14:55
监听onheadercellclick="headercellclick"  点击表格头部事件

function headercellclick(e){

有没有其他联系方式,QQ   and so on




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2