2

我在第一个下拉列表中有此代码:

<td align="left" style="padding-bottom:10px">
    <select name="category" id="category">
        <option selected value="Please Select">Please Select</option>           
        <option value="Cars">Cars</option>
        <option value="Trucks">Trucks</option>
        <option value="Motorcycles">Motorcycles</option>
        <option value="Boats">Boats</option>
    </select>
</td>

对于上一个选项,我还有第二个具有不同颜色的类别。例如:如果我选择汽车,第二个下拉菜单将显示选择“红色”、“绿色”或“蓝色”,但如果我选择卡车,第二个下拉菜单将显示仅选择“黑色”或“白色”选项。

两个第二个下拉选项都将转到 mySQL DB 中的同一列(子类别),因此在子类别列上没有汽车可以具有值“黑色”,或者在子类别列上没有卡车可以具有值“红色”。

谢谢

4

1 回答 1

2

工作示例:http: //jsfiddle.net/7YeL6/4/

鉴于这种结构:

     <select name="category" id="category">
    <option selected value="Please Select">Please Select</option>           
    <option value="Cars">Cars</option>
    <option value="Trucks">Trucks</option>
    <option value="Motorcycles">Motorcycles</option>
    <option value="Boats">Boats</option>
</select>

<div>
<select name="category2" id="truck" class="second">
        <option value="white">white</option>
        <option value="black">black</option>            
</select>

<select name="category2" id="car" class="second">
        <option value="red">red</option>
        <option value="green">green</option>
        <option value="blue">blue</option>           
</select>
</div>

您可以使用 jQuery.change函数:

       $("#category").change(function () {
  var str = "";
str =  $("select#category option:selected").text();
    if(str == "Trucks"){
        $("select.second").not("#truck").hide();
        $("#truck").show();
        $("#truck").fadeIn(1000);
    }
    else if(str == "Cars"){
        $("select.second").not("#car").hide();
        $("#car").show();
        $("#car").fadeIn(1000);
    }

})

CSS

#category2{
display: none;
}
于 2013-03-25T16:52:02.713 回答