11540 sujets

JavaScript, DOM et API Web HTML5

Bonjour, je suis très habitué à valider des formulaires en JS avec XHTML 1.0 (ou HTML 4, si vous préférez); je le fais comme tout le monde en gérant l'événement "submit" sur le formulaire. Donc, pas nécessaire de me dire comment faire ... Merci !

Maintenant, je passe au HTML5 en utilisant la validation automatisée (attribut "required" sur les champs de formulaires). Certains navigateurs (il faut comprendre ici tous (ou presque) exception faite de IE9, peu importe, oublions IE9 pour l'instant) affichent de jolies info-bulles avec des messages plus ou moins comme je le voudrais. De plus, j'aimerais effectuer des validations supplémentaires en JS non permises par HTML5. Est-ce que quelqu'un a un bon exemple illustrant comme faire pour intégrer les validations automatiques avec des validations personnalisées ?

J'ai pas trouvé grand chose sur le Web sauf de l'information très rudimentaire sur le site WHATWG concernant un API JS pour les formulaires (voir : http://www.whatwg.org/specs/web-apps/current-work/multipage/association-of-controls-and-forms.html#constraints). Ça parle des méthodes et attributs suivants sans donner d'exemples et suffisamment de détails : willValidate, setCustomValidity(message), checkValidity(), validationMessage e validity. Je comprend, en gros, l'objectif de ces méthodes et attributs mais ce n'est pas si évident que ça à intégrer avec des validations personnalisées.

En résumé, j'aimerais pouvoir :
1) Ajouter mes validations personnalisées aux validations automatiques.
2) Modifier les messages d'erreurs des validations automatiques.
3) Afficher le même type d'info-bulle pour les messages d'erreur de mes validations personnalisées.

Il me semble que je ne dois pas être le seul à me poser ce genre de questions ? Smiley eek C'est un problème très important, je crois.

Merci pour l'aide Smiley cligne

Stef..
Merci tout de même mais tu n'as pas bien lu ma question ou je n'ai pas été assez clair.
Je veux une solution qui fonctionne pour les navigateurs supportant bien les fonctionnalités de HTML5 et les APIs. Par la suite, on verra pour un polyfill.


Stef..
Merci Paolo, cet article est très pertinent même s'il ne répond pas à toutes les questions encore. L'article semble aussi incomplète (voir le bas de la page Web); il faudra surveiller pour les mises à jour. Pour ceux qui désire investiguer le sujet, regardez la méthode "setCustomValidity(message)".