Ich möchte den Eingabewert entsprechend dem Status ändern. Der folgende Code löst die Methode handleChange()
manuell aus. Dies funktioniert für ein Eingabefeld, aber ich kann nicht herausfinden, wie dies zu tun ist, um auch eine select
Box zu aktualisieren.React: trigger onChange und update select Element, wenn der Eingabewert durch den Status
Ich versuchte Folgendes, aber es hat nicht funktioniert.
ev = new Event("option", { bubbles: true });
el = ReactDOM.findDOMNode(node);
ansehen Code unten:
class App extends React.Component {
constructor(props) {
super(props)
this.state = {
value: "random text",
country: "USA"
}
}
handleChange (node, value) {
if(typeof value === "object") {
this.setState({
country: value.target.value
});
} else {
this.setState({value: 'another random text'})
}
var event = new Event('input', { bubbles: true });
this.myinput.dispatchEvent(event);
}
render() {
return (
<div>
<input value={this.state.value} onChange={(e) => {this.handleChange(e)}} ref={(input)=> this.myinput = input}/>
<select onChange={(e) => {this.handleChange(e)}} name="country">
<option>USA</option>
<option>Mexico</option>
</select>
</div>
)
}
}
ReactDOM.render(<App />, document.getElementById('app'))