Des saisies de texte avec maxlength pas de valider avec jQuery Valider
Je suis coincé avec un problème à l'aide de jQuery Valider. Le truc, c'est que j'ai quelques zones de texte avec leur maxlength
attributs définis. Bien qu'ils ne sont pas nécessaires, ils ne parviennent toujours pas à valider soit vide ou un espace.
Exemple de code HTML:
<input type="textbox" id="tbx1" maxlength="100" value="" />
Puis, $('#tbx1').valid()
retourne false
. Ne devrait-elle pas de retour true
à la place? Existe-il des solutions connues pour ce faire?
Oh, et en ajoutant $('#myform').validate({ ignore: '#tbx1' });
ne fonctionne pas pour moi, parce que je suis en utilisant ASP.NET contrôle automatique avec leur Id. Je sais que je pourrais utiliser le contrôle de l'id de client ou quelque chose comme Wilco est IDOverride, mais ce n'est tout simplement pas ce que je préfère.
Donc, n'importe qui? Merci!
c'est le point. le champ n'est pas obligatoire. Je ne sais pas si c'est un bug ou pas, mais je voudrais trouver une solution de contournement pour ce
Ce doit être un bug. Je souffre de la même chose. Vous disposez d'un champ qui n'est PAS obligatoire, mais simplement lui donner un maxlength et tout à coup le jquery valider plugin pense qu'il l'échec de la validation. 100% bug. L'autre signe révélateur, c'est qu'il n'a même pas lever une erreur pour le champ. Si quelque chose est définitivement cassé dans là. Frustrant parce que j'ai besoin de mettre maxlength limites sur mes champs!
Yup, c'est un bug, pour sûr. Donc, depuis mon application ne seront prêts dans les trois mois, jusqu'alors, je vais juste prendre le maxlength off et l'espoir d'un correctif dans la prochaine mise à jour.
Je voulais juste confirmer que avec jQuery 1.5 et jQuery Valider 1.7, je vais avoir le même problème. ASP.NET éléments avec MaxLength ne parviennent pas à valider, quand je n'ai pas mis à être nécessaire.
OriginalL'auteur rdumont | 2010-07-29
Vous devez vous connecter pour publier un commentaire.
Ce qui semble être un bug dans ce plugin.
Si fixé par le remplacement de la méthode par une implémentation personnalisée en utilisant le code suivant:
MERCI!!!!! ce bug m'a coûté quelques heures! il est hors de moi comment cela peut encore être un problème au bout de 2 ans
C'est utile d'avoir depuis le navigateur "maxlength" case n'est pas toujours en compte les retours à la ligne. Tel que décrit here.
Valider semble pour le nom du champ de saisie case this la solution. Espoir aide.
OriginalL'auteur Bruno
Rencontré ce problème moi-même sur certaines des formes complexes, j'ai écrit...
Ma solution est tout simplement de créer mon propre maxlength méthode que je le peux "maxLen" qui fonctionne presque exactement comme la méthode par défaut sous un nom différent. Il suffit de coller ce au-dessus de votre principal valider appel ($("#mainform").valider({}); ou quel que soit votre forme est appelée).
Une fois que vous avez fait cela, vous pouvez ajouter la règle comme suit:
OriginalL'auteur Chris
Tout d'abord, je suppose que l'entrée a un attribut "name" et n'est tout simplement pas indiqué dans votre exemple? Si pas, essayez, et peut résoudre le problème.
Ensuite, avez-vous essayé de définir explicitement le champ soit pas nécessaire, mais pour avoir un maxlength dans le programme de validation de l'objet? Par exemple:
$('#formId').validate(...);
OriginalL'auteur Philip Schweiger