函数,使用 React 返回带有选项的选择
function that returns a select with options, using React
我有一个包含id
和一个name
的法院JSON。JSON包含无限数量的法院。我需要创建一个充满<Option>
<Select>
.<Option>
值将是 ID,<Option>
内容将是名称。
所以我得到了这个功能
createSelectCourtHouse:function(){
return (
<Form.Field className='form-control' type='select' name='request.courthouse_id' id='accused_lastname' placeholder="Nom de l'accusé" id='accused_lastname' onChange={this.handleChange.bind(this, 'accused_lastname')}>
this.state.courthouseData.forEach(function(courthouse) {
return (
<option value={courthouse.i}>{courthouse.name}</option>
);
})
</Form.Field>)
},
但似乎我不能在回报中做一个foreach。所以我尝试了这种方式:
var field = (
<Form.Field className='form-control' type='select' name='request.courthouse_id' id='accused_lastname' placeholder="Nom de l'accusé" id='accused_lastname' onChange={this.handleChange.bind(this, 'accused_lastname')}>
this.state.courthouseData.forEach(function(courthouse) {
<option value={courthouse.id}>{courthouse.name}</option>
});
</Form.Field>
)
return field;
但它不起作用。 我觉得我快要得到答案了,但根本无法得到答案。有什么想法吗?
TL;DR :我需要创建一个选择,其中包含从 JSON 填充值的选项。
您可能想阅读为什么选择值? 在文档中
我不清楚为什么当select
元素完美地找到表达您的需求时,您为什么要创建Form.Field
抽象
<select className="form-control" name="request.courthouse_id">
{this.state.courthouseData.map((courthouse, i) => (
<option key={i} value={courthouse.id}>{courthouse.name}</option>
))}
</select>
这还有一个额外的好处,即能够将value
道具传递给 select
元素,该元素将正确显示默认/选择的option
。
使用 map
创建 jsx 元素。尝试:
var options = this.state.courthouseData.map(function(courthouse) {
return (
<option value={courthouse.i}>{courthouse.name}</option>
);
});
我不确定在哪里调用此函数,但是,您可能希望在渲染函数中返回输出:
render: function() {
return (
<SomeParentElement>
{options}
</SomeParentElement>
);
}
相关文章:
- 使用此选项选择父类内部的类
- 更新:仅根据单选按钮和所选选项选择特定项目
- 使用PHP通过HTML表单选项选择器过滤MYSQL结果
- ng-单击在IE中不起作用的选项选择Angularjs
- 从选项选择中删除值
- On为<选项>选择等效项
- 用户界面先前选择的选项选择更改
- 使用ng重复或ng选项和删除空白选项选择长方体角度
- 在HTML5、CSS、JavaScript中添加选项选择器,类似于移动应用程序中的选项设置
- 输入:选中,选项:选择选择器
- 根据使用angularjs从下拉菜单中选择的选项选择适当的复选框
- 如何根据 html 中的选项/选择重定向用户(单击按钮后)
- 使用ng选项选择中的ng选项进行过滤器下拉列表
- 如何设置选项选择的值
- 如何搜索长下拉选项/选择列表
- jQuery - 根据下拉选项选择列出结果
- 从选项选择单击时打开 2 个 URL
- 在 Angular JS 中为 ng 选项选择默认值
- 下拉选项选择的操作
- 通过单击单选按钮清除所有选项选择条目