Javascript 无法重置简单的单选按钮-React JS
我正在写一个琐事应用程序。当我选择一个答案时,我会检查它是否正确,然后马上得到一个新问题。问题是,当所选单选按钮的答案错误时,我无法让React渲染该按钮 我正在从一个JSON文件生成一些琐碎的问题。我必须动态地进行输入和标签标记。这就是我到目前为止所做的: 当选定的问题正确时,我可以得到下一个问题,但它不会显示任何选定的收音机。我的isRadioChecked以false开头。我还尝试了checked={this.state.isRadioChecked==object} 下面,我检查单击的收音机是否是正确答案,以及我的渲染方法 我真的很感谢你的帮助。谢谢 [编辑] 谢谢你,这是我第一次尝试,事实上我最后一次尝试都是直接从这里开始的。我认为问题在于我正在使用动态数据创建收音机 不管怎么说,我确实把它改成了以前的样子,尽管日志显示了所选的答案,但我仍然没有看到所选的收音机Javascript 无法重置简单的单选按钮-React JS,javascript,html,reactjs,Javascript,Html,Reactjs,我正在写一个琐事应用程序。当我选择一个答案时,我会检查它是否正确,然后马上得到一个新问题。问题是,当所选单选按钮的答案错误时,我无法让React渲染该按钮 我正在从一个JSON文件生成一些琐碎的问题。我必须动态地进行输入和标签标记。这就是我到目前为止所做的: 当选定的问题正确时,我可以得到下一个问题,但它不会显示任何选定的收音机。我的isRadioChecked以false开头。我还尝试了checked={this.state.isRadioChecked==object} 下面,我检查单击的收
setUpAnswers() {
let tempAnswerArray = this.mergeAnswers(this.state.currentQuestionNumber);
tempAnswerArray = tempAnswerArray.map((object, i) => renderHTML(object));
console.log(tempAnswerArray[0]);
tempAnswerArray = tempAnswerArray.map((object, i) => (
<div key={i}>
<input
type="radio"
name="answers"
checked={this.state.selectedAnswer === object}
onChange={this.handleOptionChange}
id={object}
value={object}
/>
<label htmlFor={object}>{object}</label>
</div>
));
this.setState({
answerArray: tempAnswerArray
});
}
//*************************************************** */
handleOptionChange = changeEvent => {
this.setState(
{
selectedAnswer: changeEvent.target.value
},
() => {
console.log(this.state.selectedAnswer);
}
);
};
您正在将this.state.isRadioChecked状态分配给所有单选按钮,如checked={this.state.isRadioChecked}。因此,所有单选按钮将同时被选中或取消选中
相反,您可以使用state.selectedAnswer更新单选按钮的checked属性。像这样的-
checked={this.state.selectedAnswer === object}
这里介绍了一篇关于如何创建单选组的好文章-您正在将this.state.isRadioChecked状态分配给所有单选按钮,如checked={this.state.isRadioChecked}。因此,所有单选按钮将同时被选中或取消选中
相反,您可以使用state.selectedAnswer更新单选按钮的checked属性。像这样的-
checked={this.state.selectedAnswer === object}
这里介绍了一篇关于如何创建广播组的精彩文章-