实现三级联动菜单

change:事件在内容改变(两次内容有可能还是相等的)且失去焦点时触发

HTML代码

<select name="" id="selProvince">
    <option value="">----请选择----</option>
</select>
<select name="" id="selCity">
    <option value="">----请选择----</option>
</select>
<select name="" id="selCountry">
    <option value="">----请选择----</option>
</select>

jQuery编辑

<script>
    var iNum1;
    var iNum2;
    var aProvince = ["湖北","江苏","安徽"];
    var aCity =[["武汉","黄冈","荆门"],["南京","无锡","镇江"],["合肥","安庆","黄山"]];
    var aCountry =[[["武汉1","武汉2"],["黄冈1","黄冈2"],["荆门1","荆门2"]],[["南京1","南京2"],
        ["无锡1","无锡2"],["镇江1","镇江2"]],[["合肥1","合肥2"],["安庆1","安庆2"],["黄山1","黄山2"]]];

    $(function () {
        for(var i=0;i<aProvince.length;i++){
            //获取到第一个标签,将省按照下拉框模式依照下标加进去
            $("#selProvince").append("<option>"+aProvince[i]+"</option>");
        };
        $("#selProvince").change(function () {
            //获取到第二个标签,除却第一个下拉列表,其他的都清除
            $("#selCity").children().not(":eq(0)").remove();
            //获取到第三个标签,除却第一个下拉列表,其他的都清除
            $("#selCountry").children().not(":eq(0)").remove();
            //获取本身的选中的下拉列表的下标,也就是获取你所选中的省下的所有下拉框的下标,然后赋值给新建的空值
            iNum1 = $(this).children("option:selected").index();
            //选择你选中的省的下面的市
            var aaCity = aCity[iNum1-1];
            //遍历aaCity,把对应的事插入进去
            for(var i=0;i<aaCity.length;i++){
                $("#selCity").append("<option>"+aaCity[i]+"</option>");
            }
        });
        $("#selCity").change(function () {
            //获取到第三个标签,除却第一个下拉列表,其他的都清除
            $("#selCountry").children().not(":eq(0)").remove();
            //获取本身下的所有下拉列表的下标,然后赋给新建的空值
            iNum2 = $(this).children("option:selected").index();
            //选择上次选中的市,根据选中的市再往下获取
            var aaCountry = aCountry[iNum1-1][iNum2-1];
            //遍历aaCountry,把对应的事插入进去
            for(var i=0;i<aaCountry.length;i++){
                $("#selCountry").append("<option>"+aaCountry[i]+"</option>");
            }
        })
    })
</script>

实现四级菜单,五级菜单一样 ,以此类推

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值