javascript - React select v2 on space press 选择第一个值
问题描述
在选择字段时,我点击空格,选择选项中的第一个值。如何禁用这种行为?
<Select
ref={r => (this.selectRef = r)}
className="basic-single"
classNamePrefix="select"
onInputChange={val => {
console.log('va', val)
this.setState({ inputValue: val })
}}
inputValue={this.state.inputValue}
options={[{ value: 'aaa', label: 'aaa bbb' }, { value: 'bbb', label: 'bbb ccc' }]}
name="color"
/>
解决方案
我建议使用onKeyDown
道具并在使用按空格键时阻止该动作,因此不会选择任何内容。
<Select
ref={r => (this.selectRef = r)}
className="basic-single"
classNamePrefix="select"
onInputChange={val => {
this.setState({ inputValue: val });
}}
onKeyDown={e => {
if (e.keyCode === 32 && !this.selectRef.state.inputValue) e.preventDefault();
}}
inputValue={this.state.inputValue}
options={[
{ value: "aaa", label: "aaa bbb" },
{ value: "bbb", label: "bbb ccc" }
]}
name="color"
/>
现场示例在这里。
推荐阅读
- feature-extraction - 脑电信号的频带功率特征提取
- node.js - 如何使用elasticsearch和nodejs加载(索引)json文件
- php - WordPress:get_post_status 需要很长时间
- sql - 我的关于 SQL Pivot 函数的脚本有什么错误?
- vba - 使用子文件夹名称自动分类电子邮件
- google-sheets-api - 使用 gspread 对谷歌电子表格的读取请求出现错误 500
- rust - 是 Vec 中的数据吗
总是密密麻麻? - javascript - 尝试替换构造函数变量时出错
- java - 从kafka主题读取时如何验证无效的分区名称
- php - Twig - 带有 3 个操作数的“for”语法,这是什么意思