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

QQ登录

只需一步,快速开始

查看: 3325|回复: 5

[结贴] checkbox选中的值改变

[复制链接]

54

主题

257

帖子

827

积分

高级会员

Rank: 4

积分
827
发表于 2017-6-15 15:30:01 | 显示全部楼层 |阅读模式
我上面填完折扣之后,选中行的数据的价格跟折扣发生改变,如图:
微信截图_20170615152659.png

我做的没有发生改变,是我的事件用错了?还是我的代码哪里有问题?
微信截图_20170615152931.png

目前不用这个平台啦~~

54

主题

257

帖子

827

积分

高级会员

Rank: 4

积分
827
 楼主| 发表于 2017-6-15 15:54:30 | 显示全部楼层
现在的情况是,我改完折扣的值之后,选中行,该行的上一行数据会发生改变,如图: 微信截图_20170615155356.png

这是为什么?
目前不用这个平台啦~~
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36069
发表于 2017-6-15 16:56:13 | 显示全部楼层
你的事件是input上的事件,event.row肯定是没有的
获取grid中多选的行,可以用grid中提供的API,然后自己遍历获取的数组给行上的字段赋值
grid.png
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

54

主题

257

帖子

827

积分

高级会员

Rank: 4

积分
827
 楼主| 发表于 2017-6-15 17:05:18 | 显示全部楼层
jishuang 发表于 2017-6-15 16:56
你的事件是input上的事件,event.row肯定是没有的
获取grid中多选的行,可以用grid中提供的API,然后自己遍 ...

我用的是dataTables组件,多选改变数据的代码是写在dataTables的onRowChecked里,全选改变数据的代码写在onRowCheckedAll里。现在问题是,多选 选中行的数据不一定会改变当前行,全选 选中行只改变第一行的数据。
多选:
Model.prototype.listDataRowChecked = function(event){
                var mainData = this.comp("mainData");
                var discountData = this.comp("DiscountData");
                var table=this.comp('listData');
                var checkedIDs=table.getCheckeds();
                        if (discountData.val("fDiscount") != 0 && discountData.val("fDiscount") != "") {
                                var row = event.row;
                                if(this.comp('listData').isChecked(row)){
                                        mainData.setValue("fDisPrice", mainData.getValue("fPrice") * discountData.val("fDiscount") / 100);
                                        mainData.setValue("fDiscount", discountData.val("fDiscount"));
                                }
                               
                        }
        };
全选:
Model.prototype.listDataRowCheckedAll = function(event){
                var mainData = this.comp("mainData");
                var discountData = this.comp("DiscountData");
                var table=this.comp('listData');
                var checkedIDs=event.source.getCheckeds();
                if(checkedIDs.length==0){//全不选
                        this.comp("mainData").each(function(obj){
                                if(obj.index%2==0){
                                        table.setRowCss(obj.row,{"backgroundColor":"#f9f9f9"});
                                } else {
                                        table.setRowCss(obj.row,{"backgroundColor":"#fff"});
                                }                               
                        });
                } else {//全选
                        for(var i=0; i<checkedIDs.length; i++){
                                table.setRowCss(checkedIDs,{"backgroundColor":"#93dffe"});
                                mainData.setValue("fDisPrice", mainData.getValue("fPrice") * discountData.val("fDiscount") / 100);
                                mainData.setValue("fDiscount", discountData.val("fDiscount"));
                        }
                }
        };
目前不用这个平台啦~~
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36069
发表于 2017-6-15 17:24:37 | 显示全部楼层
event.row获取到row
那就在setValue中把row传进行啊

mainData.setValue("fDisPrice", mainData.getValue("fPrice") * discountData.val("fDiscount") / 100,row);
                                        mainData.setValue("fDiscount", discountData.val("fDiscount"),row);
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

54

主题

257

帖子

827

积分

高级会员

Rank: 4

积分
827
 楼主| 发表于 2017-6-15 18:33:34 | 显示全部楼层
jishuang 发表于 2017-6-15 17:24
event.row获取到row
那就在setValue中把row传进行啊

解决了,感谢!在多选事件的setValue中给row传进去;
在全选事件的setValue中给checkedIDs传进去。
目前不用这个平台啦~~
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-25 16:21 , Processed in 0.085328 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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