react如何给遍历出来的文本框赋值

1.如果用defaultValue那么后台返回的值一边value是不再刷新的,如果用value加onChange又不知道怎么给单独的value值做操作。图片描述

阅读 6.9k
4 个回答

终于搞定了 其实根据遍历数组里面的数据修改就行;好比
<input type="text" onChange={e => this.inputChang(e, item)} value={item.cartAmount}/ >
我这里默认现实的是后台返回数据中的一个值,只要把item传过去让item.cartAmount=e.target.value;就可以改成文本框输入的值了!

<input value={value} onChange={(value, index) => this.handleChange{value, index}}>

input直接用v-model啊

可以参照 React-ElementUi form 组件的第一个 demo

<!--
    参照部分代码
    两个表单用的同一个 change 事件
    只要调用的时候传递不同的 key 给 setState即可
    在 es6中 key 是可以使用变量的    
-->
<Form model={this.state.form} labelWidth="80" onSubmit={this.onSubmit.bind(this)}>
      <Form.Item label="活动名称">
        <Input value={this.state.form.name} onChange={this.onChange.bind(this, 'name')}></Input>
      </Form.Item>
     <Form.Item label="活动形式">
        <Input type="textarea" value={this.state.form.desc} onChange={this.onChange.bind(this, 'desc')}></Input>
      </Form.Item>
</Form>
// element-ui 的代码, 不知道为什么没有使用 setState
// 学习下思路就好了
onChange(key, value) {
  this.state.form[key] = value;
  // this.forceUpdate();
}

希望可以帮助到你

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题