我想切換的兩個按鈕的顏色ReactJS更改特定元素。我可以設置所選按鈕的活動狀態屬性確定,但是我無法根據我的選擇(calcX)選擇如何更改另一個按鈕(calcY)的樣式。選擇並ReactJS
的代碼是脆的,但我非常新的反應和最佳做法的任何指針將不勝感激。 PS也是我使用窗體和按鈕的react-bootstrap。
const MyForm = React.createClass({
handleChange(event, attribute) {
let eventValue = event.target.value;
if (attribute === 'calcX'){
this.setState({active: true});
this.setState({bsStyle: 'info'});
let calcXBtn = ReactDOM.findDOMNode(this.refs.calcBtnGroup.refs.calcX);
calcXBtn.setState({bsStyle: 'default'});
}
...
}
render() {
return (
<Form onSubmit={this.handleSubmit} horizontal>
<FormGroup>
<ButtonGroup ref="calcBtnGroup">
<Button active className='btn btn-info' ref="calcX" onClick={(event) => this.handleChange(event, 'calcX')}>Calculate X</Button>
<Button className='btn btn-default' ref="calcY" onClick={(event) => this.handleChange(event, 'calcY')}>Calculate Y</Button>
</ButtonGroup>
...
);
}
});
module.exports = MyForm;
也許你可以找到一些提示[here](http://stackoverflow.com/questions/30376922/how-to-manage-active-state-in-bootstrap -navbar合反應) –