2015-01-20 3 views
0

양식을 숨김 필드로 코딩했습니다. 사용자가 라디오 상자를 통해 "전화"를 선택하면 다른 필드가 표시됩니다.IF 문 validate.js

validate.js를 사용하여 양식의 필드를 확인해야합니다. if 문으로 시도하기 전에 양식과 유효성 검사가 작동했습니다.

코드 :

$(document).ready(function(){ 
    $('#info_tel').hide(); 
    $('input[type="radio"]').click(function(){ 
     if($(this).attr("value")=="2"){ 
      $("#info_tel").show(); 
      $("#form1").validate({ 
       rules: { 
        nombre: "required", 
        apellido1: "required", 
        email: { 
         required: true, 
         email: true 
         }, 
        terminos: "required", 
        telefono: "required" 
       }, 
       messages: { 
        nombre: "*Requerido.", 
        apellido1: "*Requerido.", 
        email: "*Requerido.", 
        terminos: "*Requerido." 
       } 
      }); 
     } 
     if($(this).attr("value")=="1"){ 
      $('#info_tel').hide(); 
      $("#form1").validate({ 
       rules: { 
        nombre: "required", 
        apellido1: "required", 
        email: { 
         required: true, 
         email: true 
         }, 
        terminos: "required" 
       }, 
       messages: { 
        nombre: "*Requerido.", 
        apellido1: "*Requerido.", 
        email: "*Requerido.", 
        terminos: "*Requerido." 
       } 
      }); 
     } 
    }); 




}); 

이 작동하지만이 input[type="radio"]를 클릭하지 않고 양식을 제출하면, 전혀 확인하지 않습니다.

답변

0

내가 해냈어. 전체 코드 :

$(document).ready(function() { 
     $("#form1").validate({ 
      rules: { 
       nombre: "required", 
       apellido1: "required", 
       email: { 
        required: true, 
        email: true 
        }, 
       terminos: "required" 
      }, 
      messages: { 
       nombre: "*Requerido.", 
       apellido1: "*Requerido.", 
       email: "*Requerido.", 
       terminos: "*Requerido." 
      } 
     }); 

     $('#info_tel').hide(); 
     $('input[type="radio"]').click(function(){ 
      if($(this).attr("value")=="2"){ 
       $("#info_tel").show(); 
       //tel required 
       $("#telefono").rules("add", { 
        required: true, 
        minlength: 10, 
        messages: { 
        required: "*Requerido.", 
        minlength: jQuery.format("{0} digitos") 
        } 
       }); 
      } 
      if($(this).attr("value")=="1"){ 
       $('#info_tel').hide(); 
      } 
     }); 
    });