React中如何实现勾选复选框时显示文本输入框?
React复选框联动输入框问题修复
你写的代码里有几个明显的语法错误,导致无法正常工作:
- 模板字符串错误:你在模板里写了
'option.name',这会把字符串option.name直接拼接到id和name里,而不是取对应选项的name值,应该去掉单引号,直接用option.name - JSX标签语法不完整:input标签的id属性后面缺了闭合的
}和双引号,name属性后面也缺了双引号和},而且input标签没有闭合(JSX里自闭合标签要加/>)
修正后的条件渲染代码:
option.checked ? <input type="text" id={`input_${option.name}`} name={`name_${option.name}`} /> : null
另外要注意,点击复选框时要正确更新对应选项的checked状态,比如在复选框的onChange事件里,找到当前选项,修改它的checked值后重新设置状态,这样条件渲染才会根据状态变化显示/隐藏输入框。
内容的提问来源于stack exchange,提问作者qwertzuasde
相关产品推荐
相关产品推荐

