HTML表单第一个下拉列表自动更改第二个下拉选项

时间:2013-03-25 16:45:58

标签: html mysql

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

<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数据库中的同一列(子类别),因此没有Car可以在Subcategory列上具有值“Black”,或者没有Truck可以在Subcategory列上具有值“Red”。

由于

1 个答案:

答案 0 :(得分: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;
}