使用React JS进行下拉的OnChange事件

使用React JS进行下拉的OnChange事件,第1张

使用React JS进行下拉的OnChange事件

更改事件是在

<select>
元素而不是
<option>
元素上触发的。但是,这不是唯一的问题。您定义
change
函数的方式不会导致组件的重新渲染。似乎您可能尚未完全了解React的概念,所以“在React中思考”可能会有所帮助。

您必须将所选值存储为状态,并在值更改时更新状态。更新状态将触发组件的重新呈现。

var MySelect = React.createClass({     getInitialState: function() {         return {  value: 'select'         }     },     change: function(event){         this.setState({value: event.target.value});     },     render: function(){        return(<div>    <select id="lang" onChange={this.change} value={this.state.value}>       <option value="select">Select</option>       <option value="Java">Java</option>       <option value="C++">C++</option>    </select>    <p></p>    <p>{this.state.value}</p></div>        );     }});React.render(<MySelect />, document.body);

另请注意,

<p>
元素没有
value
属性。反应/
JSX简单地复制了著名的HTML语法,它不引入自定义属性(有例外
key
ref
)。如果希望所选值成为
<p>
元素的内容,则只需将其放入其中,就像处理任何静态内容一样。

了解有关事件处理,状态和表单控件的更多信息:

  • http://facebook.github.io/react/docs/interactivity-and-dynamic-uis.html
  • http://facebook.github.io/react/docs/forms.html


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5049876.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存