问题描述
constructor(props) {
super(props);
this.state = {
buttondisabled: true,radio: 0,cards: [],};
this.submitHandler = this.submitHandler.bind(this);
}
componentDidMount = () => {
this.setState({
cards: this.props.data.matrix,});
console.log("matrix",this.props.data.matrix);
};
submitHandler = (event) => {
event.preventDefault();
console.log("button clicked",this.state);
this.setState({
buttondisabled: false,});
};
changeRadioHandler = (event) => {
this.setState({
buttondisabled: false,radio: event.target.value,});
console.log("checked",event.target.value);
};
render() {
return (
<div class="matrix-bd">
{this.props.data.header_text && (
<div class="header-qn">
<h5>{this.props.data.header_text} </h5>
</div>
)}
{this.props.data.matrix && (
<div class="grid">
{this.props.data.matrix.option_questions.map((questions,i) => (
<div class="rows">
<div class="cell main">{questions.text}</div>
{this.props.data.matrix.options.map((element,i) => {
return (
<div class="cell" key={i}>
<input
type="radio"
id={i}
name={questions.text}
onChange={this.changeRadioHandler}
required
></input>
<label htmlFor={i}>{element.text}</label>
</div>
);
})}
</div>
))}
</div>
)}
<div class="buttonsubmit text-right">
<button
type="button"
id="QstnSubmit"
name="QstnSubmit"
class="btn btn-primary"
disabled={this.state.buttondisabled}
onClick={this.submitHandler}
>
Submit
</button>
</div>
</div>
);
}
假设我们连续有10个单选按钮,用户可以单击单选按钮上的任何一个,同样,每行有10个单选按钮,因此有10行(例如)。来自数据库的数据随单选按钮标签值的数量而变化。我只能从第一行中选择一个单选按钮,而不能从所有行中至少选择一个单选按钮。如何动态地做出反应?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)