在点击和页面加载时运行JS功能

时间:2015-04-13 22:42:24

标签: javascript jquery html

我有一个多步骤表单,它使用JS根据用户输入动态显示/隐藏表单的各个部分。当用户第一次浏览表单时,它完美地运行。但是,如果他们返回一步,则显示应隐藏的所有div。处理它的JS函数在点击时运行。我需要它在页面加载和单击时运行,因此如果用户返回上一步,控制显示/隐藏块('.security_sub_type')的输入将反映在表单中。

    $(function() {
      $(document).on('change','.security_sub_type',function () {
         var OBJ = $(this).closest('div.nested-fields')
          OBJ.find(".address").hide();
          OBJ.find(".serial_number").hide();
          OBJ.find(".registration_number").hide();
          if($(this).val()=="Commercial Property"){
              OBJ.find(".address").show();
              OBJ.find(".serial_number").hide();
              OBJ.find(".registration_number").hide();
          }
          if($(this).val()=="Residential Property"){
              OBJ.find(".address").show();
              OBJ.find(".Equipment").hide();
              OBJ.find(".registration_number").hide();
          }
          if($(this).val()=="Machinery"){
              OBJ.find(".registration_number").hide();
              OBJ.find(".address").hide();
              OBJ.find(".serial_number").show();
          }
          if($(this).val()=="Equipment"){
              OBJ.find(".address").hide();
              OBJ.find(".serial_number").show();
              OBJ.find(".registration_number").hide();
          }
          if($(this).val()=="Vehicle"){
              OBJ.find(".address").hide();
              OBJ.find(".serial_number").hide();
              OBJ.find(".registration_number").show();
          }
          if($(this).val()=="Inventory"){
              OBJ.find(".address").hide();
              OBJ.find(".serial_number").hide();
              OBJ.find(".registration_number").hide();
          }
          if($(this).val()=="Accounts Receivable"){
              OBJ.find(".address").hide();
              OBJ.find(".serial_number").hide();
              OBJ.find(".registration_number").hide();
          }
      }).change();
    });

0 个答案:

没有答案