我使用的是react redux表单Fields,并且我有类的下拉列表。我可以从下拉列表中选择任何类别。但问题是,每当我从下拉列表中选择任何值(类)时,我都希望触发对Change的操作。当我用更改触发操作时,下拉列表值不会设置,也不会显示选定的值。我正在使用以下代码行
<Field name="class._id" component="select" className="form-control" onChange={this.onChange.bind(this)} >
<option value="">Select class...</option>
{this.props.classes.map(Class =>
<option value={Class._id} key={Class._id} >{Class.name}</option>)}
</Field>
这是更改功能
onChange(){
console.log(" Triggered")
}
如果我没有设置onChange事件,我的下拉菜单会正常工作,并且它会用正确的文本正确显示选定的值。但我想在使用时调用函数,选择任何值
你能为这段代码提供更多的上下文吗,也许可以把整个组件(以及任何模块或容器或其他什么)放在JSBin或Fiddle中?这将帮助SO海报更好地知道如何帮助你。也就是说,看起来你的代码是正确的。你可以从这样的选择中获得价值:
onChange(event) {
console.log(event.target.value);
}
这有帮助吗?
您应该更好地使用redux和标准html元素的字段道具吗?
const {fields} = this.props
<select {...fields.class} onChange={this.handleChange}>
...
handleChange(event) {
// do your stuff
this.props.fields.class.onChange(event)
}