Javascript 选中和取消选中复选框时,设置焦点和移除焦点
我正在使用一个formik自定义选择器和一个普通html复选框。我需要编写代码,在选中复选框时设置焦点CustomMultiselect,在取消选中时删除焦点 我也尝试使用UseRef。但是useRef总是给出未定义的Javascript 选中和取消选中复选框时,设置焦点和移除焦点,javascript,reactjs,formik,Javascript,Reactjs,Formik,我正在使用一个formik自定义选择器和一个普通html复选框。我需要编写代码,在选中复选框时设置焦点CustomMultiselect,在取消选中时删除焦点 我也尝试使用UseRef。但是useRef总是给出未定义的 const handleAllLicenseCheckBox = prop => { if(true) // Code to focus the customSELECT else //Code to remove focus
const handleAllLicenseCheckBox = prop => {
if(true)
// Code to focus the customSELECT
else
//Code to remove focus
}
根据,是:focus
的唯一键盘版本
改变
输入:焦点{…}
到
输入:焦点可见{…}
这通过隐藏鼠标交互的焦点来支持可访问性,但仍然显示键盘交互的焦点
注意你所说的“专注”是什么意思?你的意思是复选框应该启用/禁用select?我需要在勾选复选框时聚焦该字段,在取消勾选复选框时移除焦点。你能提供完整的代码示例吗?(也适用于您的CustomMultiSelect)CustomMultiSelect组件是否由您创建?或者它是您在项目中使用的模块?如果是第一次,那么您应该使用
useImperialiveHandle
和forwardRef
来显示输入的聚焦和模糊功能,@mamounothman谢谢,这是我创建的。当我使用useRef时,当前值总是未定义的。
<CustomMultiSelect
name="question"
options={options}
value={valueList}
</CustomMultiSelect>
<input
onClick={() =>
handleCheckBox(props)
}
type="checkbox"
name="allcheckbox"
checked={isAllLicenseCheckBox}/>