【发布时间】:2020-04-08 01:02:17
【问题描述】:
我有一个数据表,它有复选框字段,允许人们选中或取消选中它。
如果我单击未选中的复选框,它将发送到数据库以使该清单的状态为真,如 如果我单击选中的复选框,它将发送到数据库以使该清单的状态为假。我已经做到了,并在数据库中进行了更改状态。
如果我单击未选中的复选框,这是 JSON 数据, 从此
data={"Id":"123", "checklist": false}
到这里
data={"Id":"123", "checklist": true}
问题是当我点击它时它并没有改变要在界面中检查的复选框,我需要重新加载页面以使其选中
这是我的代码 sn-p:
class Apps extends React.Component {
constructor (props) {
super(props);
this.state = {
blablabla:"ex"
}
this.onCheckChange=this.onCheckChange.bind(this)
}
onCheckChange(e){
console.log(e.target.checked)
this.setState({
[e.target.name]:e.target.checked
})
}
onSubmitChecklistClicked = async (Id) => {
var response = await RequestHandler(`${ENVIRONMENT.API_URL}api/v1.0/checklist`, {}, {Id})
console.log(response);
}
render () {
return(
<Input type="checkbox" className="input-checked"
checked={data.checklist}
onChange={this.onCheckChange,() => this.onSubmitChecklistClicked(data.Id)}></Input>
)
}
}
第一次检查或取消检查清单是基于数据库给出的JSON, 我不知道哪一个是我的问题,在 onCheckChange 函数或 checked{} 属性,或 onChange{} 属性。
【问题讨论】: