J'ai mon code ci-dessous. Mais les boutons radio ne vérifient pas ou décochent le clic. avec un gestionnaire d'événements Handlechange. P> constructor(props) {
super(props);
this.state = {
error: null,
isLoaded: false,
selectedOption: "",
QuestionAnswer: [],
counter: 0
};
}
3 Réponses :
Vous devez utiliser un gestionnaire Onchange code> au lieu d'un onclick code>
Vous pouvez vérifier mon code ici P>
En écrivant Vous souhaitez également donner votre fonction au this.state.electedOption === {nom} code> Vous vérifiez si la chaîne SELECTIONNYOPTIONOPTION code> est égale à un nouvel objet {nom: nom} code> qui ne sera jamais vrai. Vérifiez sur la chaîne nom code> directement à la place. Onchange code> PROP au lieu du onclick code> Prop. < / p>
mises à jour dans le snippet ci-dessous
1) p> à p> {nom} signifie la première chose destructurant {nom: nom}, vous pouvez en savoir plus sur ES6 Destructuring ICI . Vous essayiez donc de vérifier si la SEELLEMENTOPTION est égale au nom, car il y avait deux bretelles frisées, cela signifie une nouvelle variable. Ce qui est faux, vous pouvez vérifier directement avec exécutez cet extrait de code dans la console et cochez cette p> selecteyOption === Nom code> p> const Radio = props => {
const { name } = props;
return (
<div>
<input
id={name}
type="radio"
name="type"
value={name}
checked={this.state.selectedOption === name }
onClick={this.handleChange}
/>
<label for={name}>{name}</label>
</div>
);
};
handleChange = e => {
this.setState({
selectedOption: e.target.value
});
};
constructor(props) {
super(props);
this.state = {
error: null,
isLoaded: false,
selectedOption: "",
QuestionAnswer: [],
counter: 0
};
}
Stackoverflow.com/Questtions/27784212 / ... , réponse possible
Dupliqué possible de Comment utiliser des boutons radio dans ReactJS?