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

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: dearshine

[处理中1] 在baasData里增加了字段,然后去setOrderBy出错

[复制链接]

29

主题

119

帖子

189

积分

初级会员

Rank: 2

积分
189
QQ
 楼主| 发表于 2016-8-2 17:04:28 | 显示全部楼层
问题解决了,把baasdata数据复制到普通的data里面,然后用setorderby 就可以,
baasdata用setorderby 被转换成sql就不好执行了,不知道有什么更好的方法,如果哪位知道麻烦@我一下,谢谢了。
回复 支持 反对

使用道具 举报

29

主题

119

帖子

189

积分

初级会员

Rank: 2

积分
189
QQ
 楼主| 发表于 2016-8-2 17:15:22 | 显示全部楼层
搞错了,nnd, setorderby 对于data直接无效的。。。
回复 支持 反对

使用道具 举报

29

主题

119

帖子

189

积分

初级会员

Rank: 2

积分
189
QQ
 楼主| 发表于 2016-8-2 17:46:59 | 显示全部楼层
var data1 = this.comp("data_chezhu");
data1.refreshData();
                                data1.clearOrderBy();
                                data1.setOrderBy('chezhuid', 0);
                                data1.refreshData();
                                list4.refresh();
这个代码无效,头大啊,这个data1不是baasdata,是普通的data
回复 支持 反对

使用道具 举报

3

主题

4

帖子

26

积分

新手上路

Rank: 1

积分
26
QQ
发表于 2016-11-6 10:25:48 | 显示全部楼层
通过计算列,然后利用冒泡排序 交换data的row就行了
// 冒泡排序
        Model.prototype.sort = function(arr, data) {
                for (var i = 0; i < arr.length; i++) {
                        for (var j = 0; j < arr.length - i - 1; j++) {
                                var distance1 = arr[j].val("distance");
                                var distance2 = arr[j + 1].val("distance");
                                if (distance1 < distance2) {
                                        var temp = arr[j];
                                        arr[j] = arr[j + 1];
                                        arr[j + 1] = temp;
                                        data.exchangeRow(arr[j], arr[j + 1]);
                                }
                        }
                }
                return arr;
        };
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-1 23:31 , Processed in 0.071901 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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