请问将select 改成多选,当只选中一项时,无法取消选中,是什么原因呢?
来源:9-6 使用select下拉框组件

flask
2023-03-23
请问将课程中的select 改成多选,当只选中一项时,无法取消选中,是什么原因呢?
我是这样写的
function Select() {
const [selectList, setSelectList] = useState<string[]>(['北京'])
function handleChange(e: ChangeEvent<HTMLSelectElement>) {
if (selectList.includes(e.target.value)) {
setSelectList(selectList.filter(item => item !== e.target.value))
} else {
setSelectList([...selectList, e.target.value])
}
}
return (
<div>
<select
onChange={e => handleChange(e)}
value={selectList}
multiple
>
<option>北京</option>
<option>上海</option>
<option>杭州</option>
<option>深圳</option>
</select>
</div>
)
}
当只选中 北京 时,点击 北京 无法取消,点击没有触发 onChange 事件
写回答
1回答
-
Etcetera
2023-03-24
只有一个被选中时你点击那个元素是不会触发ChangeEvent的
052023-03-27
相似问题