Jquery在其他开关盒内的开关盒上停止onchange功能

时间:2015-01-23 07:59:15

标签: javascript jquery switch-statement onchange

我在交换机案例场景中切换案例。

当我选择选项1:案例1并选择选项2时,我会提示'For case 1 Only'..这很好。

但是当我选择选项1:案例2 ..选项2仍然运行..这绝对不是。

有人可以建议如何纠正这个问题。

$("#option1").change(function(e){   

    switch(option1) {
     case 1:    
       $("#option2").change(function(e){    
        switch(option2) {

        case 'A':
           alert('For case 1 Only'); 
           break;
        }

       });  
      break;
     case 2:
      //  Some Option 2 scenario

      break;
     default:
     // code to be executed if n is different from case 1 and 2
    }       
 });

1 个答案:

答案 0 :(得分:1)

目前,您正在事件处理程序中绑定事件处理程序。因此,每当option1更改时,您将事件处理程序绑定到option2(我相信您不希望这样)。

我认为你需要这个(假设)。

$("#option1, #option2").change(function(e) {
    var option1 = $('#option1').val();
    var option2 = $('#option2').val();
    switch (option1) {
        case 1:
            switch (option2) {
                case 'A':
                    alert('For case 1 Only');
                    break;
            }
            break;
        case 2:
            break;
        default:
            // code to be executed if n is different from case 1 and 2
    }
});