在select上呈现不同形式的reactjs
on select render different form reactjs
我正在使用react js开发一个应用程序。目前还停留在如何在select的change事件上加载不同的表单上。
var Eventoption = React.createClass({
getInitialState: function() {
return {
value: 'A'
}
},
change:function(event){
this.setState({value: event.target.value});
},
render : function(){
return <div className="form-group">
<select onChange={this.change} value={this.state.value} className="form-control">
<option value="A">Event1</option>
<option value="V">Event2</option>
<option value="S">Event3</option>
</select>
<p></p>
<p>{this.state.value}</p>
</div>
}
});
所以在事件2上选择时,我想加载不同的表单也就是说我在event2.js 中保存了它
例如
var Event2Form = React.createClass({
render:function() {
return
<h3><u>Add Event</u></h3>
<form action="index.php" method="post" id="event2Form">
<div className="form-group">
<label for="exampleEventId">Event Id</label>
<input type="text" name="event_id" className="form-control" id="event_id" placeholder="Enter Event Id" />
</div>
<div className="form-group">
<label for="exampleEventName">Event Name</label>
<input type="text" name="event_name" className="form-control" id="event_name" placeholder="Enter Event name" />
</div>
</form>
</div>;
}
});
window.Event2Form = Event2Form;
让我知道,除了目前的方法之外,还有其他更好的方法。
最简单的方法之一。
var Eventoption = React.createClass({
getInitialState: function() {
return {
value: 'A'
}
},
change:function(event){
this.setState({value: event.target.value});
},
render : function(){
var formCmp;
if (this.state.value === 'A')
formCmp = <Event1Form />
else if (this.state.value === 'V')
formCmp = <Event2Form />
return (
<div className="form-group">
<select onChange={this.change} value={this.state.value} className="form-control">
<option value="A">Event1</option>
<option value="V">Event2</option>
<option value="S">Event3</option>
</select>
<p></p>
<p>{this.state.value}</p>
{formCmp}
</div>
);
}
});
var Event2Form = React.createClass({
render:function() {
return
<h3><u>Add Event</u></h3>
<form action="index.php" method="post" id="event2Form">
<div className="form-group">
<label for="exampleEventId">Event Id</label>
<input type="text" name="event_id" className="form-control" id="event_id" placeholder="Enter Event Id" />
</div>
<div className="form-group">
<label for="exampleEventName">Event Name</label>
<input type="text" name="event_name" className="form-control" id="event_name" placeholder="Enter Event name" />
</div>
</form>
</div>;
}
});
相关文章:
- 如何在ReactJS JSX中执行嵌套的if-else语句
- jquery点击函数select&取消选择
- 拨打'父亲'函数形式a'儿童'ReactJS中的组件
- 在html Select中添加搜索
- Jquery:未触发select事件
- 如何在PHP中使用$_POST获取Select元素值
- ReactJS映射:如何仅在url变量不为空时呈现html链接
- 如何更改reactjs中外部/独立组件的状态或属性
- 无法在Ionic select中预先选择最后一个选项
- Dojo:访问dijit.form.Select中单击的项目
- ReactJS和SpringDataRest缓存问题可能与websocket有关
- X秒后刷新select元素
- reactjs this.refs vs document.getElementById
- 根据select选项元素将表单重定向到不同的URL
- 在select元素中显示highchart dashstyle(svg)
- jQuery动态表单显示在select选项上
- Javascript Select OnChange没有'不要第二次工作
- 同构reactjs-cdn资产
- 在select上呈现不同形式的reactjs
- Reactjs select -获取输入选择onChange