jquery 下拉列表級聯

$(function () {
    function objInit(obj) {
        return $(obj).html("<option>請選擇</option>");
    }

    var arrData = {
        廠商1: {
            品牌1_1: "型號1_1_1,型號1_1_2",
            品牌1_2: "型號1_2_1,型號1_2_2",
            品牌1_3: "型號1_3_1,型號1_3_2,型號1_3_3,型號1_3_4,型號1_3_5,型號1_3_6",
            品牌1_4: "型號1_4_1,型號1_4_2",
            品牌1_5: "型號1_5_1,型號1_5_2",
            品牌1_6: "型號1_6_1,型號1_6_2",
        },
        廠商2: {
            品牌2_1: "型號2_1_1,型號2_1_2",
            品牌2_2: "型號2_2_1,型號2_2_2,型號2_2_3,型號2_2_4,型號2_2_5,型號2_2_6"
        },
        廠商3: {
            品牌3_1: "型號3_1_1,型號3_1_2",
            品牌3_2: "型號3_2_1,型號3_2_2"
        }
    };
    // 遍歷上面自定義的數組將廠商放入到第一個下拉框中
    $.each(arrData, function (pF) {
        $("#selF").append("<option>" + pF + "</option>");
    });
    // 爲第一個下拉框綁定change事件
    $("#selF").change(function () {
        // 當觸發了廠商下拉框的時候,首先初始化品牌和型號的下拉框
        objInit("#selT");
        objInit("#selC");
        // 遍歷數組
        $.each(arrData, function (pF, pS) {
            if ($("#selF option:selected").text() == pF) {
                $.each(pS, function (pT, pC) {
                    $("#selT").append("<option>" + pT + "</option>");
                });
                //alert("------");
                $("#selT").change(function () {
                    objInit("#selC");
                    $.each(pS, function (pT, pC) {
                        //alert("pT------");
                        if ($("#selT option:selected").text() == pT) {
                            $.each(pC.split(','), function () {
                                $("#selC").append("<option>" + this + "</option>");
                            });
                        }
                    })
                });
            }
        });
    });
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章