Je dois valider une gamme d'éléments de texte d'entrée (kilométrage): Par exemple: Le script pour validation est comme ci-dessous - P> $(document).ready(function(){
$("#form1").validate({
rules: {
mileage: {
required: true
}
},
submitHandler: function(form) {
form.submit();
}
});
});
4 Réponses :
Vous devez faire boucle dans ces cas, comme ceci: .rules () code>
n'affecte que la première correspondance, de sorte que vous avez besoin d'un .uite () code>
sur là pour boucler et ajouter des règles à toutes les correspondances. P> P>
@Nick cravraver. Merci j'ai essayé ce que vous avez suggéré, mais cela ne fonctionne toujours pas :(. Êtes-vous sûr que tout ce que j'ai besoin de faire ?? :(
@eddy - Yup c'est tout ce qui est nécessaire ... obtenez-vous des erreurs JavaScript dans votre console?
@Nick cravaver - pas une seule erreur. Pour une raison quelconque, le plugin continue à ne valider que le premier élément :(
@eddy - Avez-vous une page que je peux regarder? BTW une autre façon d'y aller, si vous voulez juste requis code> serait
@nick Salut Nick, dis vous quoi ... tu es mon préféré dans la totalité de la communauté. J'aime la façon dont vous vous sentez la responsabilité de la communauté. Je voulais juste dire vous êtes mon numéro un code> (rien de personnel)
@Nick Craver - Enfin, j'ai trouvé comment faire fonctionner le plugin correctement:
@Pseudo. Je viens de remplacer la fonction nommée de la fonction et avec cela, j'ai rééquilibré le problème: D
@eddy - Vous peut I> faire cela, mais ce qui précède devrait fonctionner ... J'aurais donné un exemple de jsfiddle si ils n'auraient pas eu de problèmes pour le moment. Modification d'un plug-in non cassé est jamais i> la bonne approche imo.
@Pseudo. Merci, vous avez été vraiment utile et j'apprécierais vraiment si vous pouvez donner cet exemple
@eddy - Je suis corrigé, car 1,6 cela ne fonctionne plus ... curieux que l'auteur a choisi de supporter uniquement les cases à cocher et les radiobuttons pour les attributs partagés code> Nom code>, pas sûr de ce que le processus de pensée était là, car cela est i> HTML valide.
@ Nick-pourriez-vous s'il vous plaît, donnez-moi une main ici: Stackoverflow.com/questions/4528399/... : '(
dans jquery.validate.js, nous pouvons trouver une fonction nom de contrôle nommée, nous devons la modifier comme ci-dessous:
checkForm: function() { this.prepareForm(); for ( var i = 0, elements = (this.currentElements = this.elements()); elements[i]; i++ ) { if (this.findByName( elements[i].name ).length != undefined && this.findByName( elements[i].name ).length > 1) { for (var cnt = 0; cnt < this.findByName( elements[i].name ).length; cnt++) { this.check( this.findByName( elements[i].name )[cnt] ); } } else { this.check( elements[i] ); } } return this.valid(); }
Excellent en effet. Mais j'ai constaté que cette fonction ne prend pas en compte la propriété "ignorer". Je viens de raffiner la fonction dans ma réponse. J'espère que cela t'aides.
basé sur eddy Réponse, cette fonction prend le compte également le ignore Code> Réglage.
checkForm: function() {
this.prepareForm();
for ( var i = 0, elements = (this.currentElements = this.elements()); elements[i]; i++ ) {
var checkingElements = this.findByName( elements[i].name ).not(this.settings.ignore);
if (checkingElements.length !== undefined && checkingElements.length > 1) {
for (var cnt = 0; cnt < checkingElements.length; cnt++) {
this.check( checkingElements[cnt] );
}
} else {
this.check( elements[i] );
}
}
return this.valid();
},
Je préfère ne pas manipuler le code source du plugin manuellement, mais plutôt mon fichier à chaud personnalisé dans un fichier .js séparé, que j'inclus sur la page après JQuery.validate.js. Y a-t-il une façon de faire avec la méthode de la stratégie de contrôle dans l'extension?
J'ai fourc le projet sur Github et j'ai fait une demande de traction. J'espère donc que vous trouverez cette mise à jour directement dans une nouvelle version de jquery.validate.js
Utilisation de jQuery Validate 1.19.1 et modifier le fichier jquery.validate.js sur la ligne 465, remplacer par cette fonction devrait être bien. J'espère être utile;) < / p> p>