2011-05-20 3 views
2

J'ai un formulaire dans lequel un type d'entrée dont la valeur est "Prénom". Mais cela peut être modifié en fonction onfocus Je veux validation pour ce champ de saisie si elle est vide ou « Prénom »JQuery Validation ne fonctionne pas

J'ai deux fichiers jQuery jquery-1.4.2.min.js & jquery.validate.pack.js.

J'ai un autre fichier jQuery pour ce formulaire:

jQuery(document).ready(function() { 
    jQuery("#frmRegister").validate({ 
     errorElement:'div', 
     rules: { 
      Fname:{ 
       required:true, 
       minlength: 2, 
       maxlength:30    
      } 
     }, 
     messages: { 
      Fname:{ 
       required: "Please enter first name", 
       minlength: "Required minimum 2 characters allowed", 
       maxlength: "Required maximum 30 characters allowed" 
      } 
    }); 
    jQuery("#msg").fadeOut(5000); 
}); 

Dans ce fichier required:true travaille si la valeur est vide, mais par la valeur par défaut est « Prénom » il ne fonctionne donc pas que je veux à la fois si elle est vide ou c'est "Prénom".

<form name="frmRegister" id="frmRegister" method="post"> 
    <ul class="reset ovfl-hidden join"> 
     <li class="fall"> 
      <label for="Fname">Full Name:</label> 
      <div class="fl"> 
       <input type="text" class="form" id="Fname" name="Fname" value="First Name" onfocus="if(this.value=='First Name')this.value='';" onblur="if(this.value=='')this.value='First Name';" /> 
      </div> 
     </li> 
    </ul> 
</form> 

Veuillez répondre le plus tôt possible.

Merci.

+3

"S'il vous plaît répondre le plus tôt possible"? Vraiment? – jwueller

+2

@elusive rapide, rapide, rapide, rapide, l'argent du temps! : P – martynthewolf

Répondre

0

c'est mon code qu'il fonctionne correctement: essayez cette

$().ready(function() { 
$("#form2").validate(); 
// validate signup form on keyup and submit 
$("#form1").validate({ 
    rules: { 
userid: "required", 
username: { 
    required: true, 
    minlength: 2 
}, 
password: { 
    required: true, 
    minlength: 5 
}, 
authority: { 
     required: true 
    }, 
emailid: { 
    required: true, 
    email: true 
    } 
}, 
    messages: { 
    userid: "Please enter your user Id", 
    username: { 
     required: "Please enter a username", 
     minlength: "Your username must consist of at least 2 characters" 
     }, 
    password: { 
     required: "Please provide a password", 
     minlength: "Your password must be at least 5 characters long" 
     }, 
     emailid: "Please enter a valid email address", 
     authority:"Please select Authority" 
     }, 
    } 

}); 
0

Est-ce que u essayez l'ajout d'une validation personnalisée]

jQuery.validator.addMethod("workPublicserviceDate", 
    function(value, element) { 

    var hint = '<?php echo $dateHint; ?>'; 
    var format = '<?php echo $format; ?>'; 
    var pubService = strToDate($('#txtAPS').val(), format) 
    var dateAssume = strToDate($('#txtAssumeDate').val(), format); 

    if (pubService && dateAssume && (pubService > dateAssume)) { 
     return false; 
    } 
     return true; 
    }, "" 
); 

Pls noter que j'ai ajouté exemple

$("#frmEmpJobDetails").validate({ 
        rules: { 
txtAPS: { workPublicserviceDate: function(){ return ['<?php echo $dateHint; ?>','<?php echo $format; ?>']}, required:true }, 
} 
messages: { 
txtAPS : { workPublicserviceDate: '<?php echo __("Invalid date."); ?>', 
} 
0

Vous pouvez avoir un code personnalisé pour le nécessaire comme ceci:

jQuery(document).ready(function() { 
jQuery("#frmRegister").validate({ 
    errorElement:'div', 
    rules: { 

     Fname:{ 
      required: { 
       depends: function(element) { 
        return (($("#Fname").val() == "First Name") || ($("#Fname").val() == "")); 
       } 
      }, 
      minlength: 2, 
      maxlength:30    

     } 

    }, 
    messages: { 
     Fname:{ 
      required: "Please enter first name", 
      minlength: "Required minimum 2 characters allowed", 
      maxlength: "Required maximum 30 characters allowed" 
     } 
}); 
jQuery("#msg").fadeOut(5000); 
}); 

Je suppose ici que l'id de l'élément que vous validons est "Fname".

Questions connexes