antd select多选_关于antd Select 限制选择个数的解决方案
应用场景描述:
Select 被form 所包裹,且被getFieldDecorator修饰。所以值的改变应该通过form的setFieldsValue方法。
Select模式肯定会是multiple。且以最多三个值举例。
解决思路如下:
1 起初是想在Select的onchange事件中判断values的数量,数量大于三个的时候来重新setFieldsValue;且把最后的选项值替换成刚刚选择的值。
后来发现setFieldsValue方法不起作用,Select的值会一直增加。后来想想可能是 setFieldsValue与onchange 冲突,通过setFieldsValue 无法改变onchange后的值。
2 最后通过重新查看文档。发现还有一个方法可用,即 validator。验证值,通过验证所选值的数量是否大于三个,然后重新setFieldsValue ;发现此法可行。从而解决该疑难杂症。
好,最后附上代码供参考:
changeValues = (rule ,value , callback)=> {
const { setFieldsValue } = this.props.form ;
let newArr ;
if (value.length > 3){
newArr = [].concat(value.slice(0,2), value.slice(-1) ) ;
setFieldsValue({
"languages" : newArr ,
})
callback(‘最多选择三种语言‘)
} else {
newArr = value ;
callback()
}
}
{getFieldDecorator(‘languages‘, {
rules:[{required: true,message : ‘请选择三种语言‘,
validator : changeValues
}],
validateTrigger : ‘onChange‘,
})(
1
2
3
4
5
)}
antd select多选_关于antd Select 限制选择个数的解决方案相关推荐
- 关于antd Select 限制选择个数的解决方案
关于antd Select 限制选择个数的解决方案 参考文章: (1)关于antd Select 限制选择个数的解决方案 (2)https://www.cnblogs.com/weblinda/p/9 ...
- html select 多选传值,Js读取select多选的几种方法
首先,编写HTML如下: 操作系统: windowxp window7 window10 mac os 方法 function readselect2() { // 方法一 var os = docu ...
- jq select 修改选中_「jquery select」jquery操作select(取值,设置选中) - seo实验室
jquery select 最近工作中总出现select 和 option问题,整理一下,内容大部分源于网络资料 一.基础取值问题 例如 1.设置value为pxx的项选中 $(".sele ...
- select case语句_图解Go select语句原理
Go 的select语句是一种仅能用于channl发送和接收消息的专用语句,此语句运行期间是阻塞的:当select中没有case语句的时候,会阻塞当前的groutine.所以,有人也会说select是 ...
- html'中select多选,在HTML中select标签如何实现单选和多选
在HTML中select标签如何实现单选和多选 发布时间:2020-09-29 17:01:54 来源:亿速云 阅读:105 作者:小新 这篇文章主要介绍了在HTML中select标签如何实现单选和多 ...
- mysql select内部原理_数据库SQL SELECT查询的工作原理
作为Web开发人员,虽并非专业的DBA,但我们总是离不开数据库.一般开发员只会应用SQL的四条经典语句:select,insert,delete,update.以至于从来没有研究过它们的工作原理,在这 ...
- antd table动态表头_使用 antd@4 table 自定义筛选表头功能做一个联动搜索表头筛选...
前言: 上篇文章是使用 antd@4 table 自定义表头筛选完成一个表格动态列的功能,这次需要完成一个表头联动条件筛选功能. 一.开始前 开始之前先去 Antd 官网看下「自定义的列筛选功能」的代 ...
- 域名该怎样选_注册域名该怎么选择域名
据网络统计在2014年,将有超过1000个新的顶级域名启用,小编保证你将会看到越来越多地用.CC..TT..PW和.LA等为后缀的注册域名.以往只用.com..net..org 做顶级域名的时代一去不 ...
- 域名该怎样选_网站域名应该怎样选择?
网站的域名选择是上海企业网站建设的一个非常重要的方面,因为良好的域名关系这个网站未来的发展效果,而域名注册也需要做,但一般来说,域名的选择必须坚持简单.清晰.方便的记忆,一般我们注册域名后也需要依靠域 ...
最新文章
- 浅谈O2O行业的猎人与农夫【更新完毕】
- am.java_6.3.1 从am说起
- 只导出项目需要的pip依赖包-方法的缺陷
- java volidate_volidate 学习
- Java小白零基础学习如何突破自己的方法
- RFID 是什么意思
- 博客迁移至: http://www.cleocn.com
- 学习OpenCV思维导图
- SHELL脚本--多命令逻辑执行顺序
- matlab内置vmd吗,matlab中使用VMD(变分模态分解)
- 配置小程序项目的第一个页面—小程序入门与实战(五)
- 输入一个大写英文字母,输出小写英文字母;输入一个小写英文字母输出一个大写英文字母
- 用c语言switch计算奖金,求助。。关于用switch编写简易计算器
- 细思极恐---十年生死两茫茫,通信人,意欲亡。
- superset 1.3 地图 汉字 展示,省市编码 ISO3166
- 人力资源管理系统面向对象建模分析
- java农业银行面试题
- 2018年中国数字经济发展报告:农村数字消费增速超一二线城市
- 华为研发投入全球第二!力压三星、苹果
- 基于透镜成像学习策略的灰狼优化算法-附代码
热门文章
- linux下编程epoll实现将GPS定位信息上报到服务器
- Java经典设计模式:五大创建型模式
- AndroidStudio_安卓原生开发_Android中调用摄像头拍照_并剪裁图片---Android原生开发工作笔记138
- C++基础部分_C++文件操作_文件的读取操作---C++语言工作笔记077
- Nacos命名空间配置_每个人用各自自己的命名空间---SpringCloud Alibaba_若依微服务框架改造---工作笔记001
- 大数据_Flink_流式处理_简介_认识一下什么是BI中的ETL---Flink工作笔记0005
- 嵌入式工作笔记0007---对讲机嵌入式开发记录---认识对讲机的功能--随时更新
- 架构设计工作笔记001---智慧城市项目架构设计中应该注意的问题
- 移动APP开发工作笔记002---Hbuilder js判断当前设备是安卓设备还是苹果设备
- SpringCloud_005_Maven中的Scope详解_准备01