Je dois appeler un script PHP en utilisant AJAX sur ma page (validation de formulaire). Je suis assez pratique avec PHP, mais pas très bien avec javascrip, jScript ou tout autre langage client, j'ai donc trouvé un script de démo gratuit qui répond à mes besoins et maintenant je joue avec ça juste pour voir si je peux apprendre quelque chose dans le processus. Une chose que je suis curieux de savoir si je peux fusionner deux fonctions en une seule.Fusionner deux fonctions dans jScript
Les fonctions ressemble fondamentalement ceci:
// When user changes something in the form
$("#signup").change(function()
{
// ... validation code here
}
// When the form (page) first loads
$("#signup").ready(function()
{
// ... validation code here
}
La première fonction valide la forme si quelque chose a changé.
Parfois, les utilisateurs soumettent le formulaire prématurément (en appuyant sur Entrée, par exemple) et dans ce cas, la validation ne se produit plus tant que l'utilisateur n'a pas modifié quelque chose dans le formulaire. J'utilise le résultat de la validation pour décider quelle classe appliquer aux éléments d'entrée (pour dire à l'utilisateur ce qui est fait et non) et je veux que cela reste (ou se produise immédiatement) si le formulaire est soumis sans être complet . Je sais que je peux appliquer une validation de formulaire que l'utilisateur ne soumettra pas tant que tous les champs requis ne seront pas remplis, mais supposons que ce n'est pas possible pour une raison inconnue ...
La deuxième fonction est juste une copie de la première et valide le formulaire dès que la page se charge. Celui-ci n'était pas à l'origine dans le script de démo, mais j'ai compris que je pouvais dupliquer la première fonction et changer le mot "change" en "ready" pour que mon formulaire soit validé comme je le voulais.
Maintenant, juste par curiosité, y a-t-il un moyen de fusionner ceux-ci en une seule fonction au lieu d'en avoir deux identiques? Quelque chose comme l'opérateur OR en PHP:
$("#signup").change(function() || $("#signup").ready(function()
{
// ... validation code here
}
Éditer: oui, je l'ai googlé à ce sujet. Mais sans succès, peut-être en raison de mon manque de connaissances javascript/jScript, je n'utilise pas les termes de recherche corrects ...
juste essayé et cela a fonctionné comme un charme. Le code semble beaucoup mieux maintenant sans le doublon! Merci :) –