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

QQ登录

只需一步,快速开始

查看: 5985|回复: 13

[处理中4] list绑定baasdata,过滤问题

[复制链接]

18

主题

84

帖子

214

积分

中级会员

Rank: 3Rank: 3

积分
214
QQ
发表于 2016-9-2 16:38:56 | 显示全部楼层 |阅读模式
我有一个数组,存的文章id,打算使用过滤使list加载的id===保存的数组里的id时,才会显示出来,应该怎么弄?

18

主题

84

帖子

214

积分

中级会员

Rank: 3Rank: 3

积分
214
QQ
 楼主| 发表于 2016-9-2 16:46:59 | 显示全部楼层
var array = require("$UI/system/lib/base/array");
Model.prototype.eachId = function(otd_id)
        {
                var number = localStorage.getItem('user');//---------------本地保存用户id
                var row = this.comp("stu").find(['number'],[number]);//------------用户行数据
                var stu_coll = row[0].val('collect');//------------用户行保存文章字段
                var stu_coll3 = stu_coll.substring(1,stu_coll.length-1);
                var stu_coll2 = stu_coll3.split(',');
                array.each(stu_coll2,function(param){//-----------------------------查到id
                        return otd_id=param;
                });
        }
再把这个方法写在w里的list下的filter中不起作用???
回复 支持 反对

使用道具 举报

0

主题

1639

帖子

497

积分

中级会员

Rank: 3Rank: 3

积分
497
QQ
发表于 2016-9-2 16:48:22 | 显示全部楼层
在list上的filter里可以写一个函数,把当前行的id传到函数里,与你的数组做对比,然后js返回一个true/false就可以了
回复我的时候请点击我当前评论旁边的回复按钮,能保证第一时间看到您的回复,在问题解决后,希望大家可以吧解决方法也分享一下,这样可以让更多的X5开发者共同进步,谢谢大家的知识共享
回复 支持 反对

使用道具 举报

18

主题

84

帖子

214

积分

中级会员

Rank: 3Rank: 3

积分
214
QQ
 楼主| 发表于 2016-9-2 16:59:16 | 显示全部楼层
cgrddv 发表于 2016-9-2 16:48
在list上的filter里可以写一个函数,把当前行的id传到函数里,与你的数组做对比,然后js返回一个true/false ...

嗯  2楼的代码  不是比对嘛   不起作用啊
回复 支持 反对

使用道具 举报

0

主题

1639

帖子

497

积分

中级会员

Rank: 3Rank: 3

积分
497
QQ
发表于 2016-9-2 17:15:39 | 显示全部楼层
zoaun 发表于 2016-9-2 16:59
嗯  2楼的代码  不是比对嘛   不起作用啊

那肯定不起作用啊,那个fliter都是当前行的判断,你需要$row.val(你的那个过滤的id)传到方法里做判断
回复我的时候请点击我当前评论旁边的回复按钮,能保证第一时间看到您的回复,在问题解决后,希望大家可以吧解决方法也分享一下,这样可以让更多的X5开发者共同进步,谢谢大家的知识共享
回复 支持 反对

使用道具 举报

18

主题

84

帖子

214

积分

中级会员

Rank: 3Rank: 3

积分
214
QQ
 楼主| 发表于 2016-9-2 17:23:44 | 显示全部楼层
本帖最后由 zoaun 于 2016-9-2 17:30 编辑
cgrddv 发表于 2016-9-2 17:15
那肯定不起作用啊,那个fliter都是当前行的判断,你需要$row.val(你的那个过滤的id)传到方法里做判断 ...

Model.prototype.eachId = function($object)
        {
                var otd_id = $object.val('id');
                var number = localStorage.getItem('user');
                var row = this.comp("stu").find(['number'],[number]);
                var stu_coll = row[0].val('collect');
                //判断未写
        }

提示$object.val()  is not a funtion  咋回事?
回复 支持 反对

使用道具 举报

0

主题

1639

帖子

497

积分

中级会员

Rank: 3Rank: 3

积分
497
QQ
发表于 2016-9-2 17:30:18 | 显示全部楼层
zoaun 发表于 2016-9-2 17:23
Model.prototype.eachId = function($object)
        {
                var otd_id = $object.val('id');

你这个$object是啥啊。。。。
回复我的时候请点击我当前评论旁边的回复按钮,能保证第一时间看到您的回复,在问题解决后,希望大家可以吧解决方法也分享一下,这样可以让更多的X5开发者共同进步,谢谢大家的知识共享
回复 支持 反对

使用道具 举报

18

主题

84

帖子

214

积分

中级会员

Rank: 3Rank: 3

积分
214
QQ
 楼主| 发表于 2016-9-2 17:32:05 | 显示全部楼层
cgrddv 发表于 2016-9-2 17:30
你这个$object是啥啊。。。。

哈哈   怎么都觉得它比较尴尬 $model.eachId($object)  写在list中的filter上了   它应该在哪啊?
回复 支持 反对

使用道具 举报

0

主题

1639

帖子

497

积分

中级会员

Rank: 3Rank: 3

积分
497
QQ
发表于 2016-9-2 17:43:07 | 显示全部楼层
zoaun 发表于 2016-9-2 17:32
哈哈   怎么都觉得它比较尴尬 $model.eachId($object)  写在list中的filter上了   它应该在哪啊? ...

用$row,不用用$object
回复我的时候请点击我当前评论旁边的回复按钮,能保证第一时间看到您的回复,在问题解决后,希望大家可以吧解决方法也分享一下,这样可以让更多的X5开发者共同进步,谢谢大家的知识共享
回复 支持 反对

使用道具 举报

18

主题

84

帖子

214

积分

中级会员

Rank: 3Rank: 3

积分
214
QQ
 楼主| 发表于 2016-9-2 22:30:23 来自手机 | 显示全部楼层
本帖最后由 zoaun 于 2016-9-3 09:50 编辑
cgrddv 发表于 2016-9-2 17:43
用$row,不用用$object

额,出得错误提示是一样的。  是在list的filter中写$model.eachId($row)吗? 按理说list按照单一条件过滤很容易了,如果我把比对的方法放在list内的某个组件上的话就可以取到id,进行比对。
现在没法取到行,再返回结果???
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 17:27 , Processed in 0.118652 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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