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

QQ登录

只需一步,快速开始

查看: 2096|回复: 4

[结贴] 关于data.setFilter的问题

[复制链接]

31

主题

116

帖子

259

积分

中级会员

Rank: 3Rank: 3

积分
259
QQ
发表于 2017-7-25 18:20:50 | 显示全部楼层 |阅读模式
  我遇到如下问题     /// 1 和 ///3 的过滤条件相同,但是打印结果不同,再点按钮三个打印结果都变成0,如果刷新页面,再点按钮又变成1    0   0似乎每次过滤只能在上次过滤的基础上过滤

Model.prototype.verifyButton = function(event) {

   var data=this.comp("userData");  有1条数据
            data.clear();
            data.setFilter("phone#filter", "fPhoneNumber='" + phoneInput +"'");      /// 1
            data.refreshData();
          alert(data.count());          打印为1

            data.clear();
            data.setFilter("pwfilter", "pw='" + pw + "'");                                         ///2
            data.refreshData();
          alert(data.count());          打印为0

            data.clear();
            data.setFilter("phone#filter", "fPhoneNumber='" + phoneInput +"'");       ///3
            data.refreshData();
        alert(data.count());            打印为0

发表于 2017-7-26 09:30:43 | 显示全部楼层
data.setFilter  如果第一个参数相同!表示这是同一个过滤条件
如果第一个参数不同,表示两个过滤条件  and 的关系  取并集的!

第二个过滤条件
data.setFilter("pwfilter", "pw='" + pw + "'");                  
设置后,并没有清空这个条件,他就会一直生效!

所以第三次刷新的时候!是两个条件共同作用的!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

22

主题

130

帖子

272

积分

中级会员

Rank: 3Rank: 3

积分
272
QQ
发表于 2017-7-26 20:15:14 | 显示全部楼层
liangyongfei 发表于 2017-7-26 09:30
data.setFilter  如果第一个参数相同!表示这是同一个过滤条件
如果第一个参数不同,表示两个过滤条件  an ...

我 也是这个问题  有什么好办法么  不要and这个关系
回复 支持 反对

使用道具 举报

88

主题

464

帖子

763

积分

高级会员

Rank: 4

积分
763
QQ
发表于 2017-7-26 20:36:19 | 显示全部楼层
Messy 发表于 2017-7-26 20:15
我 也是这个问题  有什么好办法么  不要and这个关系

给你一个例子
1    有俩个字段是type1 , type2,, type里有 苹果  梨子        type2,,有 大  和小
var type1="苹果"
var type2 ="大"
如果你想过滤只要过滤苹果
data.setFilter("filter1", "type1='" + type1 +"'");

如果你已经执行过上一次的过滤苹果操作,,此时,,只想过滤 大
data.setFilter("filter1", "");
data.setFilter("filter2", "type2='" +type2 +"'");

如果你想过滤  苹果   大
data.setFilter("filter1", "type1='" + type1 +"'");
data.setFilter("filter2", "type2='" +type2 +"'");
回复 支持 反对

使用道具 举报

31

主题

116

帖子

259

积分

中级会员

Rank: 3Rank: 3

积分
259
QQ
 楼主| 发表于 2017-7-29 08:19:18 | 显示全部楼层
我在网上看到前辈博客的总结
用data.filters.clear();
再data.refresh();
data就恢复过滤前的状态了
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-10 07:28 , Processed in 0.054421 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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