2017-09-21 26 views
0

我已經查看並嘗試了其他問題的解決方案,但似乎無法使其工作。我面臨的問題是event.target.id和event.target.value在這裏不起作用。我做了一些研究並找出原因。現在我只需要一種方法來從選擇字段中獲取「ID」如何從material-ui中的SelectField使用反應獲取id?

如何獲取ID以便使此功能有效?

在這裏,我有選擇:

  <SelectField 
      id="category" 
      floatingLabelText="Category" 
      value={this.state.value} 
      onChange={this.updateTask.bind(this)} 
     > 
      <MenuItem disabled={true} primaryText="Choose A Category" /> 
      <MenuItem value="delivery" primaryText="Delivery" /> 
      <MenuItem value="dog walking" primaryText="Dog Walking" /> 
      <MenuItem value="house cleaning" primaryText="House Cleaning" /> 
     </SelectField> 

這裏是功能:

updateTask(event, index, value) { 
    event.preventDefault(); 
    let updated = Object.assign({}, this.state.task); 
    updated[event.target.id] = event.target.value; 
    this.setState({ 
     task: updated, 
     value: value, 
    }); 
    } 
+0

你面臨什麼問題? –

+0

添加到編輯上面 –

+0

「event.target.id和event.target.value在這裏不起作用」你是什麼意思?他們沒有定義? –

回答

0

不知道完全確定材料的UI是如何工作的,但你可以做

onChange={(event, index, value) => this.updateTask(event, index, value, "id")} 

並添加id paramaeter updateTask

updateTask(event, index, value, id){ 
    console.log(id) 
} 
相關問題