2012-04-24 8 views
13

hi sto usando il plugin di validazione jquery.validazione jquery, quando il campo di input ha un attributo title, invece del titolo del messaggio di errore viene dato come messaggio di errore

Ho un problema strano, ho un validaion come questo

jQuery("#profile_info").validate({ 

    rules : { 
     city : { 
      required : true, 
      minlength : 3, 
      maxlength : 30, 
      cityvalidation: true 
     }, 
     state : { 
      required : true, 
      minlength : 3, 
      maxlength : 30, 
      cityvalidation: true 
     } 
    }, 
    messages : { 
     city : { 
      required : " City must be filled in", 
      minlength : "At least 3 characters long", 
      maxlength : "Should not exceed 30 characters", 
     }, 
     state : { 
      required : " State must be filled in", 
      minlength : "At least 3 characters long", 
      maxlength : "Should not exceed 30 characters", 
     } 
    } 
}); 

e cityvalidation

jQuery.validator.addMethod("cityvalidation", function(value, element) { 
     return this.optional(element) || /^[a-zA-Z\u0080-\u024F\s\/\-\)\(\`\.\"\']+$/i.test(jQuery.trim(value)); 
    }, "You Have Typed Unallowed Charactors"); 

miei campi di input sono

            <div class="select-date-container-side location-codes"> 
                 <input id="city" name="city" 
                  value="<?php if(isset($profileinfo['CityName'])){echo $profileinfo['CityName'];}else if(isset($city)){echo $city;} ?>" 
                  title="City" type="text" 
                  class="smaler-textfield textfield clear-default" 
                  tabindex="1900" /> 
                </div> 
                <div class="select-date-container-middle location-codes"> 
                 <input id="state" name="state" 
                  value="<?php if(isset($profileinfo['StateName'])){echo $profileinfo['StateName'];}else if(isset($state)){echo $state;} ?>" 
                  title="State" type="text" 
                  class="smaler-textfield textfield clear-default" 
                  tabindex="1900" /> 
                </div> 

se il cityvalidation fallito. "You Have Typed Unallowed Charactors" messaggio, ma invece che i titoli dei campi sono mostrati.

enter image description here

  • Se rimuovo il titolo funziona perfettamente. quindi cosa ho supposto di fare. voglio ottenere il messaggio di errore personalizzato al posto del titolo. si prega di aiutare ........

grazie in anticipo .....................

risposta

22

hmmm ho trovato.

ho usato ignoreTitle: true,

jQuery("#profile_info").validate({ 


    ignoreTitle: true, 

    rules : { 
     city : { 
      required : true, 
      minlength : 3, 
      maxlength : 30, 
      cityvalidation: true 
     }, 
     state : { 
      required : true, 
      minlength : 3, 
      maxlength : 30, 
      cityvalidation: true 
     } 
    }, 
    messages : { 
     city : { 
      required : " City must be filled in", 
      minlength : "At least 3 characters long", 
      maxlength : "Should not exceed 30 characters", 
     }, 
     state : { 
      required : " State must be filled in", 
      minlength : "At least 3 characters long", 
      maxlength : "Should not exceed 30 characters", 
     } 
    } 
}); 
Problemi correlati