2010-12-14 65 views
1

J'ai une zone de texte dynamique dans mon formulaire. J'aime valider en utilisant le plugin bassistance jquery.validation de zone de texte dynamique à l'aide de jquery

http://bassistance.de/jquery-plugins/jquery-plugin-validation/

Mon nom de zone de texte est dans la mise formate de tableau [], comment représenter les règles et les messages

<input type="text" name="setting[]"> 

mon script de validation est

<script type="text/javascript"> 
$("#freebidz_frm").validate({ 
    rules: { 
     setting:{ 
      required: true 
      } 
    }, 
    messages: { 
     setting: '<br>'+"Please enter Default Font Style"+'' 
    }}); 
</script> 

Mais il est ne fonctionne pas ... quelqu'un m'aide! Merci d'avance

Répondre

2

En dépit de ce que les autres disent, il est valide (et utile) d'inclure des crochets dans vos noms d'entrée (invalide pour les ID, cependant). La plupart des langages côté serveur les traiteront comme un tableau, ce qui peut vous faire gagner beaucoup de temps lors de l'écriture du traitement.

En ce qui concerne votre script, il y a deux points où il peut aller mal:

  1. Assurez-vous que le script de validation est enveloppé dans .ready (document) $ jQuery (function() {...}) ; (Je suppose que vous l'avez dans votre script complet)
  2. Dans le cas de caractères spéciaux, essayez d'entourer le nom d'entrée (y compris les crochets) entre guillemets.

J'ai copié votre code dans une nouvelle page HTML et le script de validation a fonctionné correctement lorsque j'ai effectué ces deux ajustements. Veillez simplement à placer 'setting []' entre guillemets dans les parties 'rules' et 'messages' du script.

Puisque vous créez des tableaux à partir de vos entrées, je suppose que ce n'est pas le seul 'setting []' dans le formulaire. Si c'est le cas, vous devrez obtenir un peu plus de fantaisie - créer des règles de classe peut vous aider à valider un ensemble d'entrées basé sur une classe commune (http://docs.jquery.com/Plugins/Validation/Validator/addClassRules) .