起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2850|回复: 7

[处理中4] list显示的数据条数不对

[复制链接]

18

主题

80

帖子

180

积分

初级会员

Rank: 2

积分
180
QQ
发表于 2017-2-24 09:41:56 | 显示全部楼层 |阅读模式
        //接收参数,并赋值给一个input,然后调用按钮的点击事件
        Model.prototype.modelParamsReceive = function(event) {
                var search = event.params.data;
                if (search === undefined) {
                        this.comp("searchInput").val("");
                } else {
                        this.comp("searchInput").val(search);
                }
                this.searchBtnClick();
        };

        //搜索按钮的点击事件,input为空时显示所有的数据
        Model.prototype.searchBtnClick = function(event) {
                var search = this.comp("searchInput").val();
                var data = this.comp("teamData");
                data.refreshData();
                if (search === "") {                                //为空时显示list,隐藏提示文本
                        this.showList.set(true);
                        this.showMsg.set(false);
                } else {
                        data.setFilter("teamFilter", "teamName like '%" + search + "%'");
                        data.refreshData();
                        if (data.count() === 0) {                //count=0,说明没有找到数据,所以显示提示信息
                                this.showList.set(false);
                                this.showMsg.set(true);
                        } else {                                                //不等于0,此时应该显示的是根据teamFilter过滤后的结果
                                this.showList.set(true);
                                this.showMsg.set(false);
                        }
                }
        };




代码如上,在count不等于0的时候,如果是仅仅在本页面点击按钮是没有问题的,关键是从上一个页面接收参数后调用按钮点击事件时,显示的list中还是全部数据,并没有过滤,这是什么原因呢?

1

主题

6163

帖子

2095

积分

金牌会员

Rank: 6Rank: 6

积分
2095
QQ
发表于 2017-2-24 09:58:46 | 显示全部楼层
你是说在searchBtnClick 事件中search值得到了  但是setFilter没起作用是吗?
回复 支持 反对

使用道具 举报

18

主题

80

帖子

180

积分

初级会员

Rank: 2

积分
180
QQ
 楼主| 发表于 2017-2-24 10:04:05 | 显示全部楼层
半导体 发表于 2017-2-24 09:58
你是说在searchBtnClick 事件中search值得到了  但是setFilter没起作用是吗?

不是,setFilter也起作用了,data中的数据已经过滤了,但是list显示的没有过滤
回复 支持 反对

使用道具 举报

18

主题

80

帖子

180

积分

初级会员

Rank: 2

积分
180
QQ
 楼主| 发表于 2017-2-24 10:07:15 | 显示全部楼层
半导体 发表于 2017-2-24 09:58
你是说在searchBtnClick 事件中search值得到了  但是setFilter没起作用是吗?

这个是搜索页面。如果仅仅是在本页上搜索是没有问题的;但是如果是接收上一个页面传过来的参数(就是search这个input的值是上一个页面传回来的),再调用click事件的话,list显示的是没有过滤的,但是data中的数据其实已经过滤了,这个时候我只需要再点击一次按钮就可以过滤list显示
回复 支持 反对

使用道具 举报

1

主题

6163

帖子

2095

积分

金牌会员

Rank: 6Rank: 6

积分
2095
QQ
发表于 2017-2-24 11:06:17 | 显示全部楼层
munanl 发表于 2017-2-24 10:07
这个是搜索页面。如果仅仅是在本页上搜索是没有问题的;但是如果是接收上一个页面传过来的参数(就是sear ...

哦哦   是list没有实时刷新对吧   但是一般执行了refreshData了之后是会刷新的呀   你下拉一下是不是也会过滤  如果是的话说明list没有实时刷新
可以使用this.comp("list").refresh()刷新list
回复 支持 反对

使用道具 举报

18

主题

80

帖子

180

积分

初级会员

Rank: 2

积分
180
QQ
 楼主| 发表于 2017-2-24 11:28:55 | 显示全部楼层
半导体 发表于 2017-2-24 11:06
哦哦   是list没有实时刷新对吧   但是一般执行了refreshData了之后是会刷新的呀   你下拉一下是不是也会 ...

试过list的刷新,不管用啊
回复 支持 反对

使用道具 举报

1

主题

6163

帖子

2095

积分

金牌会员

Rank: 6Rank: 6

积分
2095
QQ
发表于 2017-2-24 13:51:05 | 显示全部楼层
munanl 发表于 2017-2-24 11:28
试过list的刷新,不管用啊

Model.prototype.searchBtnClick = function(event) {
                var search = this.comp("searchInput").val();
                var data = this.comp("teamData");
                data.refreshData();
                if (search === "") {                                //为空时显示list,隐藏提示文本
                        this.showList.set(true);
                        this.showMsg.set(false);
                } else {
                        data.setFilter("teamFilter", "teamName like '%" + search + "%'");
                        data.refreshData();
                        ////就在这个位置写刷新
                        if (data.count() === 0) {                //count=0,说明没有找到数据,所以显示提示信息
                                this.showList.set(false);
                                this.showMsg.set(true);
                        } else {                                                //不等于0,此时应该显示的是根据teamFilter过滤后的结果
                                this.showList.set(true);
                                this.showMsg.set(false);
                        }
                }
        };
回复 支持 反对

使用道具 举报

1

主题

6163

帖子

2095

积分

金牌会员

Rank: 6Rank: 6

积分
2095
QQ
发表于 2017-2-24 13:52:27 | 显示全部楼层
munanl 发表于 2017-2-24 11:28
试过list的刷新,不管用啊

那你下拉的时候会不会出现啊
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-7-1 10:36 , Processed in 0.058279 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表