show中正确的做法是隐藏案例

时间:2016-03-18 05:59:37

标签: jquery

        $(document).on("change",".itm_nm",function () {
        if(b.model_serial_batchno ==='M')
        {
        $('.model_hid').toggle();
        }

        if(b.model_serial_batchno ==='S')
        {
        $('.serial_hid').toggle();
        }

        if(b.model_serial_batchno ==='B')
        {

        $('.medi_view_batch_hid').toggle();
        }

        if(b.model_serial_batchno ==='D')
        {
        $('.medi_kit_expir_hid').toggle();
        }


        if(b.model_serial_batchno ==='U')
        {
        $('.medi_kit_tets_hid').toggle();
        }

        if(b.model_serial_batchno ==='W')
        {
        $('.war_hid').toggle();
        }

        if(b.model_serial_batchno ==='E')
        {
        $('.exp_hid').toggle();
        }

        })


    the above code works fine for 1 time when i select another option the previous shown are not hidding.
    What can i do in this case!!

    i created a div class to placed all divs inside .  

i cant use remove what can i do is fair if i use reload or some thing? 

on change the previous shown must be hidden if b.model_serial_batchno become false.

当我选择前面显示的另一个选项没有隐藏时,上面的代码可以正常工作一次。     在这种情况下我能做些什么!!

i created a div class to placed all divs inside .  

我不能使用删除我能做什么是公平的,如果我使用重新加载或一些东西?

如果b.model_serial_batchno变为false,则必须隐藏更改前面显示的内容。

2 个答案:

答案 0 :(得分:1)

您可能需要的是使用toggle()设置显示,如

$(document).on("change", ".itm_nm", function() {
  var value = $(this).value();
  $('.model_hid').toggle(value === 'M');
  $('.medi_view_batch_hid').toggle(value === 'B');
  $('.medi_kit_expir_hid').toggle(value === 'D');
  $('.medi_kit_tets_hid').toggle(value === 'U');
  $('.war_hid').toggle(value === 'W');
  $('.exp_hid').toggle(value === 'E');
})

答案 1 :(得分:0)

为你正在切换的所有div提供一个公共类。在更改函数开始时,首先要做的是使用该公共类隐藏所有div。

$(document).on("change",".itm_nm",function () {
    $('.hid').hide();
    //your code continues

假设hid是普通类。