2016-01-18 143 views
0

我的任務說,當用戶選擇的孩子數不是0(這是一個下拉列表),那麼我們必須首先檢查布爾條件,根據哪個顯示選擇年齡選項的兒童被選中。 即如果孩子計數爲3,並且RequestAge布爾值爲true,那麼我必須顯示下面的3個下拉列表,其中的年齡計數從0到12.因此,我在下面的「OnChange」事件上調用了一個函數,但是即使1個下拉列表也不顯示
並且下拉列表的默認值是'Select Age'。你可以幫我嗎。React + Redux:如何動態添加下拉字段

if (RequestAge) 
{ 
    if (childrenCount > 0) 
    { 
     var AgeOptions = ['Select Age', '1','2','3'....'12']; 
     return (
       <label>Enter Age of Children'</label> 
       <select name='selectAge' id='selectAge'> 
        <option key='Select Age' value='Select Age'>this.props.AgeOptions}     
</option> 
         </select> 
       ) 
    } 
} 
+0

我想你應該張貼實際的代碼(和更多的吧..就像整個組件)。從這個僞代碼很難說實際問題在哪裏。 – azium

回答

1

您可以使用下面的代碼中提到

render:function() 
    { 
    var AgeOptions = ['1','2','3']; 

    return(
     <div> 
     Select Age: 
     <select> 
     <option value="0" selected>Select Age</option> 
     {AgeOptions.map(function(age){ 
      return(
      <option value={age} >{age}</option> 
      ) 
     })} 
     </select> 
     </div> 

    ) 
    } 

工作示例Demo

+0

感謝Dhaval的迴應。它可以在下拉的OnChange事件上工作嗎?並且可以在Redux框架上創建類,如何在頁面中引用Combobox。很抱歉有很多問題。 –

+0

@ChakravartyA:你不需要實現createClass可以直接使用的渲染方法的代碼{AgeOptions.map(函數(年齡){ 回報( <選項值= {年齡}> {年齡} ) })}在你的代碼 –

+0

好的謝謝,明白了。現在如何添加更多基於動態計數的選擇。正如我上面提到的,如果計數是2,那麼2下拉,如果3,然後3下拉。 –