2014-03-04 87 views
1

我有三個相互依賴的下拉列表。我希望能夠將第三個DD設置爲null,只要選擇第一個下拉列表,但到目前爲止,我的腳本沒有做任何事情。它正在更新第二個DD,但不是第三個DD。下拉列表在使用依賴下拉菜單時不會更新onchange

當所有的DD都被設置並且我更新第一個DD時,它會更新第二個DD但不會將第三個設置爲空。

這裏是我的腳本:

echo CHtml::dropDownList('island_id',$island,$locationsList, 
      array('ajax'=>array('type'=>'POST', 
       'url'=>CController::createUrl('supplierHead/getRegions'), 
       'update'=>'#region_id',), 
       'id'=>'island_id', 
       'empty'=>'Choose Island', 
       'onchange'=>'$("#province_id").html("<option value=''>Choose Province</option>")' 
    )); 
echo " "; 
echo CHtml::dropDownList('region_id',$region, $regionsList, 
      array('ajax'=>array('type'=>'POST', 
       'url'=>CController::createUrl('supplierHead/getProvinces'), 
       'update'=>'#province_id',), 
       'id'=>'region_id', 
       'empty'=>'Choose Region', 
    )); 
echo " "; 
echo CHtml::dropDownList('province_id',$province,$provincesList, array('empty'=>'Choose Province')); 

回答

1

試試這個:

echo CHtml::dropDownList('island_id',$island,$locationsList, 
      array('ajax'=>array('type'=>'POST', 
       'url'=>CController::createUrl('supplierHead/getRegions'), 
       'update'=>'#region_id',), 
       'id'=>'island_id', 
       'empty'=>'Choose Island', 
       'onchange'=>'$("#province_id,#region_id").children().html("<option value=''>Choose Province/region</option>")' 
    )); 
+0

能不能請你解釋一下什麼是 '平變化' 正是這麼做? –

+0

每次更改下拉列表中的選定選項時,都會觸發onchange事件。因此,只要island_id中的選項發生變化,其他兩個下拉列表的值將設置爲「選擇省份/地區」 – Sayed

+0

因此,如果我只想要更改province_id下拉列表,我應該取出#region_id 'onchange'裏面? 因爲這就是我以前做過的事情,它根本沒有反映任何變化。 –