2010-08-09 4 views
0

jQuery.validate Code errorPosition:jQuery.validate errorPosition ne fonctionne pas correctement

errorPlacement: 
    function(error, element) 
    { 
      error.appendTo(element.siblings("label")); 
    }, 

Ce code fonctionne avec brio quand il n'y a qu'un seul élément ci-dessous l'étiquette de lui.

ne fonctionne pas:

<label for="location">Location:</label><br /> 
<div id="location"></div><br /> 
<input name="location" id="h_location" hidden /><br /> 

Cela fonctionne:

<label for="location">Location:</label><br /> 
<input name="location" id="h_location" hidden /><br /> 

Lorsque l'emplacement div n'est pas là l'erreur montre à côté de l'étiquette de l'emplacement. Lorsque le div de localisation est là, le message d'erreur ne s'affiche pas du tout.

J'ai demandé de l'aide et quelqu'un m'a mentionné que je devais lire des éléments de niveau CSS. Je lis sur eux et je ne trouve pas de solution. Tout ce que j'ai compris de cette lecture est, comment afficher: inline, block ou none. Je ne comprends apparemment pas ce à quoi cette personne fait allusion.

Pourquoi le message d'erreur ne s'affiche pas quand il le devrait et comment l'afficher?

-Merci, Rich

Répondre

0

J'ai trouvé un moyen de joindre le message d'erreur sur l'étiquette:

var elementName = element.attr("name"); 

error.appendTo($("label[for=" + elementName + "]")); 

Cela fonctionne comme prévu.

Je suis toujours ouvert à d'autres façons d'accomplir cela.

Questions connexes