jQuery Chained Select Menu的简单问题

时间:2014-12-11 10:01:41

标签: javascript jquery

使用Javascript构建的我的链接选择菜单几乎完美无缺:

DEMO:http://jsfiddle.net/seqL2cfo/

但是,当我选择US > Alaska然后返回Choose a State...时,所有US结果都会消失。然后,当我将默认国家/地区更改为Choose a Country...时,所有结果都会消失。

为什么不能返回默认状态?

使用Javascript:

jQuery('#cat').change(function () {
    var val = jQuery(this).val();
    jQuery("#statecat").toggle(val == "us");

    if (val == "0") 
        jQuery('#countries_select').siblings('div').show();
    else {
        jQuery('form').siblings('div').hide();
        jQuery('.' + val).show();
    }
});

jQuery('#statecat').change(function() {
    jQuery('.state1').hide();
    jQuery('.' + jQuery(this).val()).show();
});


jQuery("#countries_select select").change(function(){
    console.log(jQuery(this).val())

    if( jQuery(this).val() == "us"){
        jQuery("#state_select").show();
    } else {
        jQuery("#state_select").hide();
    }

    jQuery("ul.countries > li").hide()
    jQuery("ul.countries ." + jQuery(this).val() ).css("display", "block")
})

谢谢

1 个答案:

答案 0 :(得分:1)

您必须检查select的值是否为0 /空,然后显示所有国家/地区:

if(jQuery(this).val()  == ''){
      jQuery("ul.countries > li").show()
}else{
    jQuery("ul.countries > li").hide()
    jQuery("ul.countries ." + jQuery(this).val() ).css("display", "block")        
}

更新小提琴: http://jsfiddle.net/seqL2cfo/1/