est ici une fonction pour une utilisation en tant que gestionnaire d'événements qui utilise this
:Comment écrire une fonction en tant que gestionnaire d'événement et fonction appelable prenant un argument?
function validate() {
if (this.val() == '') {
return false;
}
}
$(':input').change(validate);
est ici la même fonction réécrite pour prendre un argument, pour que je puisse l'appeler explicitement:
function validate(field) {
if ($(field).val() == '') {
return false;
}
}
validate($('#customer_name'));
Comment puis-je réécrire ma fonction validate
pour le rendre utilisable comme à la fois un gestionnaire d'événements, et comme une fonction autonome pour moi d'appeler?
+1 pour appliquer(). C'est l'alternative la plus agréable et la plus idiomatique, à mon humble avis. – Tomalak
PS: une erreur s'est produite dans votre second exemple de code. Je pense que cela devrait être '$ (this)' dans le corps de la fonction. – Tomalak