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

QQ登录

只需一步,快速开始

查看: 1243|回复: 8

[结贴] 无法删除选中的checked选项 提示detailData.getRowByID is not a func...

[复制链接]

41

主题

303

帖子

877

积分

高级会员

Rank: 4

积分
877
QQ
发表于 2016-5-4 16:50:02 | 显示全部楼层 |阅读模式
grid组件选择多选项时,点击删除后提示detailData.getRowByID is not a function,具体设置如图所示,忙了一下午也不知什么原因求帮主帮一下好吗?

后台设置

后台设置
选择后删除代码.png

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35906
发表于 2016-5-4 17:26:56 | 显示全部楼层
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

41

主题

303

帖子

877

积分

高级会员

Rank: 4

积分
877
QQ
 楼主| 发表于 2016-5-5 09:03:23 | 显示全部楼层
本帖最后由 lwcompany 于 2016-5-5 09:15 编辑

var grid = this.comp("grid1");
var rowIDs = grid.getCheckeds();//获取多选选中行的id.返回的是list数组
var data = this.comp("bizData1");
var rows = [];   
for(var i=0;i<rowIDs.length;i++){//遍历多选选中的行id
       rows.push(data.getRowByID(rowIDs)) ; //通过行id获取到行,并push到rows中
}
if (rows.length > 0){        
        data.deleteData(rows);
}


按照这个代码好用了,谢谢! 不过我想问下我上面代码错在哪里呢

回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35906
发表于 2016-5-5 11:06:41 | 显示全部楼层
lwcompany 发表于 2016-5-5 09:03
var grid = this.comp("grid1");
var rowIDs = grid.getCheckeds();//获取多选选中行的id.返回的是list数组 ...

detailData.GetCurrentRow怎么实现的?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

41

主题

303

帖子

877

积分

高级会员

Rank: 4

积分
877
QQ
 楼主| 发表于 2016-5-5 15:28:52 | 显示全部楼层
name $UI/system/components/justep/data/data#getRowByID
function
param {string} rowid 行ID,默认:当前行ID
returns {$UI/system/components/justep/data/data#Row}
description 根据行ID获取Row,函数会遍历所有数据,不要在循环中大量使用以免引发性能问题
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35906
发表于 2016-5-5 17:02:51 | 显示全部楼层
具体的代码?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

41

主题

303

帖子

877

积分

高级会员

Rank: 4

积分
877
QQ
 楼主| 发表于 2016-5-6 10:30:24 | 显示全部楼层
        getRowByID : function(id, all) {
                                        if (id !== undefined && id !== null) {
                                                var r=null, func = !all ? 'each' : 'eachAll';
                                                this[func](function(evt) {
                                                        if (id == this.getRowID(evt.row)) {
                                                                evt.cancel = true;
                                                                r = evt.row;
                                                        }
                                                }, this);
                                                return r;
                                        }else return this.getCurrentRow(true);
                                },
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35906
发表于 2016-5-6 11:56:41 | 显示全部楼层
这个是平台的,你的.GetCurrentRow怎么写的?

如果你是直接调用平台的那么你的方法写错了
data.getCurrentRow()
getCurrentRow (boolean peek,不影响bind计算链,即想获取当前行但是又不感知当前行变化时可以使用getCurrentRow(true)获取当前行)
获取data当前的行
Parameters
boolean        peek,不影响bind计算链,即想获取当前行但是又不感知当前行变化时可以使用getCurrentRow(true)获取当前行


这个方法不是自己传rowid获取row的,他获取的就是当前行

如果要通过rowid获取rowid用的是getRowByID
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

41

主题

303

帖子

877

积分

高级会员

Rank: 4

积分
877
QQ
 楼主| 发表于 2016-5-6 12:51:01 | 显示全部楼层
过去吧,结帖,谢谢帮主耐心的回复,一起加油
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-17 05:45 , Processed in 0.068163 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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