我在React中有一個動態創建的,我希望能夠提交所有輸入字段的值,但我無法在更改處理程序上添加單獨的對於每個輸入elment,因爲它們被動態創建的:如何在React.js中提交動態表單
提取物的形式JS:
const FormElements = ({formFields}) => (<div> {
formFields.map(formField => (<FormElement name={formField.name} type={formField.fieldType} />)
)} </div>);
console.log(formFields);
return (
<div class="col-md-12">
<div class="panel panel-primary">
<div class="panel-heading">
<h4 class="panel-title">
{title} - {id}
</h4>
</div>
<div class="panel-body">
<form >
<FormElements formFields={formFields} />
<a
class="btn btn-primary"
onClick={this.handleSubmitButton}//what do I do with this function?
href="#">Submit</a>
</form>
</div>
</div>
</div>
);
形式元件JS:
export default class FormElement extends React.Component {
constructor(props) {
super(props);
}
render() {
return (
<div class="form-group">
<label for="{this.props.name}">{this.props.name}</label>
<input type="{this.props.type}}" class="form-control" id="{this.props.name}" placeholder="blah blah" />
</div>
);
}
}
這種方法的唯一問題是,當頁面與數據重新加載時,它會取消選擇您輸入的框。 – Wayneio