2011-06-30 3 views
0

Je souhaite afficher le message d'erreur généré par le plug-in de validation jQuery à un emplacement spécifique. Comment puis je faire ça? Par exemple, j'ai 2 boutons radio, par défaut le plugin génère le message d'erreur à côté du premier bouton radio (avant le texte "1 an" .Je veux afficher après le 2ème bouton radio (après le texte "2 ans". je fais quejQuery validation message d'erreur problème

HTML:.

<div > 
    <label for="period">Select period</label> 
    <div class = "radio-buttons"> 
     <input type="radio" name="period" > 1 year 
     <input type="radio" name="period" > 2 years 
     <span class="error">Display error message here.</span> 
    </div>       
</div> 

J'affiche un message d'erreur dans une période

$("#test").validate({ 
      errorElement: "span", 
    }); 

Répondre

2

Essayez cette

et modifiez votre conteneur d'erreur à une div, pour éviter une travée à l'intérieur une autre plage.

<div class = "radio-buttons"> 
    <input type="radio" name="period" > 1 year 
    <input type="radio" name="period" > 2 years 
    <div class="error"></div> 
</div> 
1

Assurez-vous que vous avez des éléments appropriés comme <div id="expiryyear"> etc dans votre code

.
errorPlacement: function(error, element) { 
    if (element.attr("id") == "expirymonth" || element.attr("id") == "expiryyear") 
      error.insertAfter("#expiryyear"); 
    else if (element.attr("id") == "cvv") 
      error.insertAfter("#cvvError"); 
    else if (element.attr("id") == "opt_havecreditterms" || element.attr("id") == "opt_applyforcreditterms") 
      error.insertAfter("#credit-option-error"); 
    else if (element.attr("id") == "bankstate" || element.attr("id") == "bankzip") 
      error.insertAfter("#bankzip"); 
    else 
      error.insertAfter(element); 

}