我在我的反应表单中有2个提交按钮。我正在尝试使用onClick函数来获取单击按钮的ID,以便我可以指定如何处理每个按钮。我的onClick函数返回未定义的id的setState。我怎样才能正确抓住按钮的ID并设置状态?在onClick函数中设置状态
handleClick() {
var buttons = document.getElementsByTagName("button");
var buttonsCount = buttons.length;
for (var i = 0; i < buttonsCount; i++) {
buttons[i].onclick = (e) => {
this.setState({clickedSubmit: this.id});
console.log(this.state.clickedSubmit); //returns undefined
};
}
}
//in the render
<button id="formSubmit" className="btn btn-info" name="submitButton" onClick={this.handleClick}>Submit</button>
<button id="hashSubmit" className="btn btn-info" name="submitButton" onClick={this.handleClick}>Generate Hash</button>
你可以用'这个访问值.props.id' –
^实际上,要使用'this.props.id',你必须为按钮创建一个组件,这可能比你想要做的更多 –