【EasyUI DataGrid】实现跨页保持多选checkbox状态

本文介绍了在使用EasyUI DataGrid时遇到的跨页多选状态丢失问题,并提供了解决方案。通过在DataGrid中添加特定属性以保持选中状态,但进一步指出,如果使用全选框,可能会导致所有数据被选中,因此建议使用能唯一标识的属性以正确实现跨页多选功能。
部署运行你感兴趣的模型镜像

       为了实现对EasyUi DataGrid的批量操作,需要对多行的数据进行选中,经过测试发现一个问题:进行多选的时候,经过翻页,上一页的数据选择状态被清空。然而在实际中这是不符合要求的,我们经过翻页上一页数据的选中状态应该仍然保持选中,而不是被清除。

       为了实现对dataGrid的多选操作,我们在datagrid中添加复选框,能够保持多选,复选框的代码如下所示:

这里写图片描述

       在上述中需要注意的是:field:cb,cb这个属性名可以任意的起名字,只要不和后台数据传过来的属性名一样就行。

       为了解决用户翻页选中的问题,需要在加入一个属性,如下所示:

这里写图片描述

       与此相对的问题就来了,我IdField后面的属性名能不能是cb呢?也就是复选框的那个属性列,然后你尝试了一下,发现没问题。就得出一个结论:在datagrid显示的属性列中的属性都可以跟在idField后面。

       事实上你得出的结论是错误的。然后就有人感到奇怪了?你是在逗我吗?我明明用cb这个属性都可以实现跨页选中了,然后配上我要批量操作的代码,功能也通了,你现在告诉我我的结论不正确,你是不是傻?

       不不不,我不傻,你也不傻。只是你考虑的情况太单一了,直接用截图证明我的结论吧。我的功能界面是这样子的:
这里写图片描述
       点击左边的一栏,在右面显示左边一栏的详细信息,不点击左边的默认显示左边第一栏的详细信息。下面我们跨页的代码用cb复选框试一下,也就是idField :'cb',看看会出现什么情况:

这里写图片描述

这里写图片描述

       就会有人说,这不是挺正常的吗,我点击全选按钮,两页内容全部都选中了。别急,我们接着往下看,当你点开培训编号为200002的培训项目时,你会发现如下的页面:
这里写图片描述

       当你再点击培训编号为201403的项目如下图所示:
这里写图片描述

       通过上图你会发现,idField后面的属性如果是全选框,会导致所有的培训信息都被选中,这不是我们想要的结果,这就是idField后的属性不用复选框的原因。
       综上所述:为了解决跨页多选的问题:一般情况下idField后的属性为主键,能唯一标识的。

您可能感兴趣的与本文相关的镜像

Wan2.2-T2V-A5B

Wan2.2-T2V-A5B

文生视频
Wan2.2

Wan2.2是由通义万相开源高效文本到视频生成模型,是有​50亿参数的轻量级视频生成模型,专为快速内容创作优化。支持480P视频生成,具备优秀的时序连贯性和运动推理能力

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值