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

QQ登录

只需一步,快速开始

查看: 4287|回复: 7

[结贴] 关于Data.each的用法

[复制链接]

82

主题

339

帖子

1106

积分

金牌会员

Rank: 6Rank: 6

积分
1106
QQ
发表于 2018-2-28 12:48:27 | 显示全部楼层 |阅读模式
我用Data.each方法对数据进行遍历,条件是当发现不符合条件的数据行出现时报警并跳出,如果遍历完成后没有发现不符合条件的数据行则进行数据保存并提示,目前有几个地方还是不太明白,第一是发现问题跳出遍历时是不是用param.cancel = true呢?第二是遍历全部完成时的条件判断信息怎么写?使用data.getLastRow()吗?第三是在Data.each方法里justep.Util.hint("保存成功!", {type: 'success', parent: this.getRootNode()});不能用,会报错this.getRootNode is not a function,这个如何解决?源代码如下:


var mainData = this.comp("mainData");

               
mainData.each(function(param)
{                       
        var sCPaymentRSum = param.row.val('sCPRSpotExchange')*1+param.row.val('sCPRHonour')*1+param.row.val('sCPRTradeHonour')*1+param.row.val('sCPROther')*1;
        sCPaymentRSum = sCPaymentRSum.toFixed(6);
                       
        if(param.row.val('sCPaymentRSum') != sCPaymentRSum)
        {
                justep.Util.hint("第"+(param.index+1)+"行的四项付款方式之和不等于付款总额,请检查后重新输入!", {type: 'danger', parent: this.getRootNode()});
                param.cancel = true;                       
        }
                       
        if(数据遍历全部成功完成时的判断条件?)
        {
                mainData.saveData();
                justep.Util.hint("保存成功!", {type: 'success', parent: this.getRootNode()});
        }
});

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36185
发表于 2018-2-28 13:37:51 | 显示全部楼层
http://doc.wex5.com/?p=3416中的说明

在each中this的作用域不是model了,在遍历前定义变量
var self = this;
然后在遍历中用self.getRootNode()
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

82

主题

339

帖子

1106

积分

金牌会员

Rank: 6Rank: 6

积分
1106
QQ
 楼主| 发表于 2018-2-28 14:04:21 | 显示全部楼层
jishuang 发表于 2018-2-28 13:37
看http://doc.wex5.com/?p=3416中的说明

在each中this的作用域不是model了,在遍历前定义变量

看过说明了,但还是不知道遍历完成得条件判断是什么,Data.each里面得param只有param.data,param.row,
param.index,param.cancel四种啊,使用的时候也没什么参数提示
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36185
发表于 2018-2-28 14:42:08 | 显示全部楼层
自己获取data的最后一行,然后获取rowid,遍历的时候判断啊
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

82

主题

339

帖子

1106

积分

金牌会员

Rank: 6Rank: 6

积分
1106
QQ
 楼主| 发表于 2018-2-28 14:46:11 | 显示全部楼层
jishuang 发表于 2018-2-28 14:42
自己获取data的最后一行,然后获取rowid,遍历的时候判断啊

哦。。。那不就要用数据游标了么。。。而且rowid这个说法不是也没了么。。。
回复 支持 反对

使用道具 举报

82

主题

339

帖子

1106

积分

金牌会员

Rank: 6Rank: 6

积分
1106
QQ
 楼主| 发表于 2018-2-28 14:49:06 | 显示全部楼层
jishuang 发表于 2018-2-28 14:42
自己获取data的最后一行,然后获取rowid,遍历的时候判断啊

另外问一句,以前写在modelXBLLoaded事件下得代码现在写在哪?这个事件没有了啊
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36185
发表于 2018-2-28 15:15:45 | 显示全部楼层
1.获取到行,行上提供的getID()获取rowid啊
2.model的onLoad事件
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

82

主题

339

帖子

1106

积分

金牌会员

Rank: 6Rank: 6

积分
1106
QQ
 楼主| 发表于 2018-3-2 10:34:13 | 显示全部楼层
jishuang 发表于 2018-2-28 15:15
1.获取到行,行上提供的getID()获取rowid啊
2.model的onLoad事件

好的,谢谢,结贴吧
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-5 19:02 , Processed in 0.063220 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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