jquery.validate, jquery.metadata et données html5

Je cherche à utiliser les atsortingbuts de données html5 pour transmettre les règles de validation à jquery.validate en tant qu’espace intermédiaire jusqu’à ce que le plug-in soit mis à jour avec le support HTML5. J’utilise jquery 1.4.2, jquery.validate 1.7 et jquery.validate 2.1. Dans mon code HTML, j’utilise un code tel que celui-ci:

 

Dans mon jQuery je fais ce qui suit:

  $.metadata.setType ("html5"); $(function () { $('#myForm').validate ({debug:true}); });  

Cela provoque juste un message d’erreur, validator.methods [méthode] est indéfinie

J’ai fait un metadata () sur l’élément avec l’atsortingbut data-validate, et un object renvoyé a été nommé nommer validate avec mes atsortingbuts définis. Je sais donc que les métadonnées recherchent l’atsortingbut et le chargent, mais le plugin validate peut semble pas le supporter. Si je retourne à class = “{validate: {…}}” et commente la ligne qui configure les métadonnées pour utiliser HTML 5, tout fonctionne comme il se doit.

Est-ce que je fais quelque chose de mal, ou y a-t-il un problème avec les plugins de validation et / ou de métadonnées?

Essayer:

 $.metadata.setType("html5"); $('#myForm').validate({ meta: "validate" }); 

http://jsfiddle.net/petersendidit/5YND2/

Au cas où quelqu’un utiliserait une version plus récente de jQuery, jQuery Validate et le plug-in de métadonnées jQuery, toute la documentation que j’ai trouvée pour les utiliser ensemble est périmée. Bien que le plug-in jQuery Validate puisse toujours utiliser les métadonnées jQuery, les versions plus récentes de jQuery Metadata ne prennent plus en charge le type “html5” car jQuery prend désormais en charge les atsortingbuts de données HTML5 en tant que source de métadonnées. Cependant, jQuery Validate n’a pas été mis à jour pour l’utiliser.

La solution pour cela (au moins jusqu’à ce que jQuery Validate soit mis à jour pour prendre en charge la prise en charge intégrée des métadonnées à l’aide d’atsortingbuts de données consiste à utiliser le type ‘attr’ et à pointer directement sur votre atsortingbut de données. Par exemple:

 $.metadata.setType("attr", "data-validate"); $("form").validate(); 

Notez qu’il n’est pas nécessaire de passer la balise “meta” car la bibliothèque de métadonnées va directement à l’atsortingbut correct pour lire les valeurs. Voici un jsFiddle modifié utilisant des versions mises à jour de toutes les bibliothèques:

http://jsfiddle.net/Wcu4L/