2015-08-08 53 views
0

我想做一個多選擇一個依賴於另一個。 當我選擇水果則顯示了三種選項香蕉橘子APLE然後選擇banbana顯示它的另一種選擇紅色橙色yellow.But問題顯示爲紅色orege黃色所以第三種類型我面對的問題多選擇選項一個互相依賴

<html> 
<head> 

</head> 
</body> 

<select name="select1" id="select1"> 
<option value="1">Fruit</option> 
<option value="2">Animal</option> 
<option value="3">Bird</option> 
<option value="4">Car</option> 
</select> 

<select name="select2" id="select2"> 
<option value=""></option> 
<option value="1">Banana</option> 
<option value="1">Apple</option> 
<option value="1">Orange</option> 
<option value="2">Wolf</option> 
<option value="2">Fox</option> 
<option value="2">Bear</option> 
<option value="3">Eagle</option> 
<option value="3">Hawk</option> 
<option value="4">BWM<option> 
</select> 
// here is my problem 
<select name="select3" id="select3"> 
<option value=""></option> 
<option value="1">red</option> 
<option value="1">orange</option> 
<option value="1">yellow</option> 
<option value="2">white</option> 
<option value="2">gray</option> 
<option value="2">blue</option> 
<option value="3">ash</option> 
<option value="3">silver</option> 
<option value="4">gold<option> 
</select> 
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script> 
<script type="text/javascript" src="js/function.js"></script> 

     <script type="text/javascript"> 
$("#select1").change(function() { 
if($(this).data('options') == undefined){ 
    /*Taking an array of all options-2 and kind of embedding it on the select1*/ 
    $(this).data('options',$('#select2 option').clone()); 
    } 
var id = $(this).val(); 
var options = $(this).data('options').filter('[value=' + id + ']'); 
$('#select2').html(options); 
}); 

$("#select2").change(function() { 
if($(this).data('options') == undefined){ 
    /*Taking an array of all options-2 and kind of embedding it on the select1*/ 
    $(this).data('options',$('#select3 option').clone()); 
    } 
var id = $(this).val(); 
var options = $(this).data('options').filter('[value=' + id + ']'); 
$('#select3').html(options); 
}); 

</script> 
</body> 
</html> 
+0

請告訴我們是什麼原因造成的問題,也寫清楚,所以我們可以幫助你。 – Script47

+0

你的語法和拼寫都很糟糕。請更清楚地解釋您遇到的問題。 – j08691

+0

當我選擇水果然後第二個選項顯示香蕉橙等,但是當我選擇香蕉它必須顯示它的第三選擇顏色...但第三選擇不正常工作 –

回答

0

$("#select1").change(function() { 
 
    if ($(this).data('options') == undefined) { 
 
    /*Taking an array of all options-2 and kind of embedding it on the select1*/ 
 
    $(this).data('options', $('#select2 option').clone()); 
 
    } 
 
    var id = $(this).val(); 
 
    var options = $(this).data('options').filter('[value=' + id + ']'); 
 
    $('#select2').html(options); 
 
}); 
 

 
$("#select2").change(function() { 
 
    if ($(this).data('options') == undefined) { 
 
    /*Taking an array of all options-2 and kind of embedding it on the select1*/ 
 
    $(this).data('options', $('#select3 option').clone()); 
 
    } 
 
    var id = $(this).val(); 
 
    var options = $(this).data('options').filter('[value1=' + id + ']'); 
 
    $('#select3').html(options); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select name="select1" id="select1"> 
 
<option value="1">Fruit</option> 
 
<option value="2">Animal</option> 
 
<option value="3">Bird</option> 
 
<option value="4">Car</option> 
 
</select> 
 

 
<select name="select2" id="select2"> 
 
<option value1 = "1" value=""></option> 
 
<option value1 = "1" value="1">Banana</option> 
 
<option value1 = "1" value="1">Apple</option> 
 
<option value1 = "2" value="1">Orange</option> 
 
<option value1 = "2" value="2">Wolf</option> 
 
<option value1 = "2" value="2">Fox</option> 
 
<option value1 = "3" value="2">Bear</option> 
 
<option value1 = "3" value="3">Eagle</option> 
 
<option value1 = "4" value="3">Hawk</option> 
 
<option value1 = "4" value="4">BWM<option> 
 
</select> 
 

 
<select name="select3" id="select3"> 
 
<option value1 = "1" value=""></option> 
 
<option value1 = "1" value="1">red</option> 
 
<option value1 = "1" value="1">orange</option> 
 
<option value1 = "2" value="1">yellow</option> 
 
<option value1 = "2" value="2">white</option> 
 
<option value1 = "2" value="2">gray</option> 
 
<option value1 = "3" value="2">blue</option> 
 
<option value1 = "3" value="3">ash</option> 
 
<option value1 = "4" value="3">silver</option> 
 
<option value1 = "4" value="4">gold<option> 
 
</select>

+2

歡迎來到堆棧溢出,這段代碼在做什麼?請詳細說明,這是如何回答這個問題的?花一些時間,並採取網站的[旅遊](http://stackoverflow.com/tour),並閱讀[如何撰寫答案](http://stackoverflow.com/help/how-to-answer)。 – Hizqeel