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

QQ登录

只需一步,快速开始

查看: 4355|回复: 12

[处理中3] list列表如何对各行中的checkbox进行处理

[复制链接]

97

主题

580

帖子

1359

积分

金牌会员

Rank: 6Rank: 6

积分
1359
QQ
发表于 2017-8-2 12:22:15 | 显示全部楼层 |阅读模式
本帖最后由 carbinechun 于 2017-8-2 14:09 编辑

如图所示,每行有个checkbox,我想做个动态效果——修改数量后checkbox就变成选中状态。这样的话怎么在每行处理每行的checkbox?用this.comp()获取到的是第一行的checkbox,其他行的话无法正常得到。另外如何设置当前行某input获取焦点呢?如果是从当前input的某事件处理的话,用event.source就相当于组件本身,event.source.focus()就能将焦点停在本组件中,但如果调用其他函数(函数会对popOver操作,点击其中的按钮后关闭popOver函数结束)在其他函数中设置焦点的话,直接用event.source.focus()就不是对应本组件了,在其他函数中应该怎么设置input获取焦点呢?唯一相同的是这些函数涉及的组件都在list的同一行中。


以截图为例说明 ,点击数量的input输入数量后,光标移出时在input的blur事件中会对当前行checkbox进行选中操作,然后调用函数aaa打开popOver,进行仓库选择列表界面,点左上角返回按钮可关闭popOver,同时将焦点再返回数量的input;或者选择某一仓库,点右侧的对号按钮完成选择,同时将焦点再返回数量的input。现在的总是就是checkbox不能正确的变成选中状态,选仓库后popOver关闭后焦点不能返回数量的input
wlmxlist.png
wlmxlist2.png
传说中路过
发表于 2017-8-2 15:10:12 | 显示全部楼层
checkbox 的bind-ref 属性绑定一个data组件字段就可以了! 比如是int类型的!
设置选中为1  未选中为0
通过修改data组件字段的值就能控制选中 或 未选中状态!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

97

主题

580

帖子

1359

积分

金牌会员

Rank: 6Rank: 6

积分
1359
QQ
 楼主| 发表于 2017-8-2 17:38:21 | 显示全部楼层
liangyongfei 发表于 2017-8-2 15:10
checkbox 的bind-ref 属性绑定一个data组件字段就可以了! 比如是int类型的!
设置选中为1  未选中为0
通过 ...

那设置焦点的问题呢?
传说中路过
回复 支持 反对

使用道具 举报

发表于 2017-8-2 18:22:58 | 显示全部楼层
carbinechun 发表于 2017-8-2 17:38
那设置焦点的问题呢?

什么焦点?? 
如果你想获取list中某行的dom节点!然后通过操作dom节点获取焦点
http://docs.wex5.com/wex5-ui-question-list-2061
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

97

主题

580

帖子

1359

积分

金牌会员

Rank: 6Rank: 6

积分
1359
QQ
 楼主| 发表于 2017-8-3 08:20:24 | 显示全部楼层
liangyongfei 发表于 2017-8-2 18:22
什么焦点?? 
如果你想获取list中某行的dom节点!然后通过操作dom节点获取焦点
http://docs. ...

获得焦点就是focus事件啊。。。某项操作后让光标移到哪个组件上,根据链接说的,需要获得组件对象后再获取xid然后再用this.getElementByXid().focus()来实现么
传说中路过
回复 支持 反对

使用道具 举报

41

主题

837

帖子

2271

积分

金牌会员

搬砖工

Rank: 6Rank: 6

积分
2271
QQ
发表于 2017-8-3 08:57:46 | 显示全部楼层
选中list组件 点击时间 有bind-focus()
Wex5开发者,欢迎互相交流学习
交流群:30057529


我要成为代码女神
回复 支持 反对

使用道具 举报

97

主题

580

帖子

1359

积分

金牌会员

Rank: 6Rank: 6

积分
1359
QQ
 楼主| 发表于 2017-8-3 09:15:12 | 显示全部楼层
qiuxinw66 发表于 2017-8-3 08:57
选中list组件 点击时间 有bind-focus()

没有明确思路啊。比如说我在某一行执行完某个操作后让光标移动到另个input,这种也要在list的bind-focus事件中处理么,还是在行中的input的bind-focus事件中处理
传说中路过
回复 支持 反对

使用道具 举报

41

主题

837

帖子

2271

积分

金牌会员

搬砖工

Rank: 6Rank: 6

积分
2271
QQ
发表于 2017-8-3 09:36:42 | 显示全部楼层
那你吧list  绑定focus函数不就好  jq里面的 on('focus',functio(){})),每当光标移动到input上就会触发focus
Wex5开发者,欢迎互相交流学习
交流群:30057529


我要成为代码女神
回复 支持 反对

使用道具 举报

发表于 2017-8-3 13:42:59 | 显示全部楼层
carbinechun 发表于 2017-8-3 08:20
获得焦点就是focus事件啊。。。某项操作后让光标移到哪个组件上,根据链接说的,需要获得组件对象后再获 ...

你是点击事件对吗??在list点击事件中

$(event.currentTarget).find("input[xid='input']");
获取input的 jquery 对象

然后再通过jquery 操作 获取光标!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

97

主题

580

帖子

1359

积分

金牌会员

Rank: 6Rank: 6

积分
1359
QQ
 楼主| 发表于 2017-8-4 11:14:54 | 显示全部楼层
liangyongfei 发表于 2017-8-3 13:42
你是点击事件对吗??在list点击事件中

$(event.currentTarget).find("input[xid='input']");

以截图为例说明 ,点击数量的input输入数量后,光标移出时在input的blur事件中会对当前行checkbox进行选中操作,然后调用函数aaa打开popOver,进行仓库选择列表界面,点左上角返回按钮可关闭popOver,同时将焦点再返回数量的input;或者选择某一仓库,点右侧的对号按钮完成选择,同时将焦点再返回数量的input。现在的总是就是checkbox不能正确的变成选中状态,选仓库后popOver关闭后焦点不能返回数量的input


是在List的行事件中,但不是单纯的点击事件,是行的某一input的onBlur事件然后打开popOver,然后在popOver里再进行处理的时候,怎么能正常获取此行的input组件
传说中路过
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-9 18:25 , Processed in 0.060244 second(s), 27 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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