jQuery MiniUI

 找回密码
 立即注册
查看: 5557|回复: 8
打印 上一主题 下一主题

grid中是否有筛选方法? [复制链接]

Rank: 3Rank: 3

跳转到指定楼层
楼主
发表于 2013-1-9 15:00:24 |只看该作者 |倒序浏览
看到combobox中有查找列方法,可实现在combobox输入过程中类似边输入边查找的效果
var items = this.findItems(e.value);
            if (!items || items.length == 0) {
                e.isValid = false;
                e.errorText = "输入值不存在";               
            }
在tree中有过滤方法,可以不用去后台查询就能从客户端过滤出来想要的数据
var key = mini.get("key").getValue();
            tree.filter(function(node){
                if(node.name.indexOf(key) != -1)
                    return true;
            });
请问grid中有类似这些功能的方法吗?比如查出某个库房有10条设备信息,我只想看关于压力表的信息,可以以压力表为条件重新查询,但是最好有这种类似于筛选或查找的方法从当前显示的数据中实现。谢谢!

Rank: 8Rank: 8

沙发
发表于 2013-1-9 15:04:36 |只看该作者

Rank: 3Rank: 3

板凳
发表于 2013-1-9 15:12:22 |只看该作者
factory 发表于 2013-1-9 15:04
你要的是不是http://miniui.com/demo/#src=datagrid/rowedit_autocomplete.html

这是给我发了个什么衔接?里面只有一个save。
我是想问问grid有没有筛选功能,比如说一张表里有10行,其中类型列中分别是自行车、汽车、火车、飞机,现在我只想看列值=飞机的所有行,可不可以从这张表10行数据中筛选或查找出来,其它自行车、汽车、火车的行都不显示了。

Rank: 8Rank: 8

地板
发表于 2013-1-9 15:36:32 |只看该作者
本帖最后由 factory 于 2013-1-9 15:39 编辑
johnconner 发表于 2013-1-9 15:12
这是给我发了个什么衔接?里面只有一个save。
我是想问问grid有没有筛选功能,比如说一张表里有10行,其 ...

实现在combobox输入过程中类似边输入边查找的效果
你不是要边输入变查找的效果么?
如果只要显示需要的列,那你就看隐藏显示列的例子好了

Rank: 3Rank: 3

5#
发表于 2013-1-9 15:45:38 |只看该作者
factory 发表于 2013-1-9 15:36
实现在combobox输入过程中类似边输入边查找的效果
你不是要边输入变查找的效果么?
如果只要显示需要的列 ...

哎,我也不知道是我叙述不清还是怎么地,我是想要grid的筛选功能,combobox和tree的我都实现了。

Rank: 8Rank: 8

6#
发表于 2013-1-9 15:52:49 |只看该作者
johnconner 发表于 2013-1-9 15:45
哎,我也不知道是我叙述不清还是怎么地,我是想要grid的筛选功能,combobox和tree的我都实现了。 ...

如果你只是显示需要的列的话,用隐藏显示列做好了
http://miniui.com/demo/#src=datagrid/hidecolumn.html

Rank: 8Rank: 8

7#
发表于 2013-1-9 15:55:32 |只看该作者
factory 发表于 2013-1-9 15:52
如果你只是显示需要的列的话,用隐藏显示列做好了
http://miniui.com/demo/#src=datagrid/hidecolumn.htm ...

或者动态加载列也可以,
var columns = [....]

grid.setColumns(columns);

Rank: 3Rank: 3

8#
发表于 2013-1-9 20:11:09 |只看该作者
本帖最后由 johnconner 于 2013-1-9 20:16 编辑
factory 发表于 2013-1-9 15:52
如果你只是显示需要的列的话,用隐藏显示列做好了
http://miniui.com/demo/#src=datagrid/hidecolumn.htm ...


我是要显示需要的行,不是列,以某一列的值为条件对行进行过滤

function onComboChanged(e){
            var jzid = combo.getValue();
            var rows = grid.findRows(function(row){
                if(row.jzid == jzid ) return true;
            });
        }
通过查询函数获取行对象数组,数组已经获得了,但是如何让grid中不符合条件的行隐藏?不能清空grid,因为这是筛选出来的,当筛选条件变了的时候还要从原grid数据中筛选

Rank: 8Rank: 8

9#
发表于 2013-1-10 09:24:18 |只看该作者
johnconner 发表于 2013-1-9 20:11
我是要显示需要的行,不是列,以某一列的值为条件对行进行过滤

function onComboChanged(e){

客户端的行筛选暂时还没有。
你将筛选条件发送到服务端,服务端进行对数据的筛选,然后返回给表格,显示出你需要的行,这样做

Archiver|普加软件

GMT+8, 2024-11-27 09:37 , Processed in 1.041008 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部