2016-07-08 15 views
1

私はreact-bootstrap選択リストをレンダリングしています。私はデフォルト値を設定するとき、私のリストdoesntはそれにデフォルト。私はそれをデバッグするときに値が正しく設定されていますが、オプションは変更されません。選択リストデフォルト値does not work

は、オプションの配列をループして、各オプションを作成する:

render: function() { 
    let options = []; 
    let label = ''; 
    let selectedValue = 0; 

    for (let i = 0; i < this.props.options.length; i = i + 1) { 
     if(this.props.options[i].isDefault){ 
      selectedValue = this.props.options[i].id; 
     } 

     label = this.props.options[i].contactName; 
     let option; 
      option = <option key={i} value={parseInt(this.props.options[i].id)}>{label}</option>; 
     options.push(option); 
    } 

    return (
     <Input type='select' value={label} defaultValue={parseInt(selectedValue)} ref='select' className='input-sm bottom-buffer' onChange={this.handleSelect}> 
      {options} 
     </Input> 
    ) 
} 

私は、デフォルト値を設定しますどのように?

答えて

1

これは値を使用しているためです。今では、変数ラベルの値をレンダリングするたびにコードが強制されます。そして、あなたが紹介する最後のオプションにそのラベルを設定しています。

value = {label}を削除する必要があります。

詳細を見るにはForms | Reactを確認してください。