Fonctions personnalisées
- Dans une page, définissez la fonction JavaScript personnalisée dans un code HTML personnalisé, dans les balises
<script>. - Dans une vue, définissez les fonctions JavaScript personnalisées dans l'éditeur JavaScript en ligne, sous Comportement.
Utilisation des mots clés this et page
Dans l'éditeur JavaScript en ligne d'une vue, le mot clé this utilise la portée initiale du contexte d'exécution global, ce qui signifie que this fait référence à la vue elle-même et peut également se rapporter à n'importe quelle vue imbriquée dedans.
Dans l'exemple suivant, le formulaire de connexion comporte un texte et une vue de mot de passe définis dans la page, avec les ID de contrôle et. Notez la façon dont this est utilisé dans l'éditeur JavaScript en ligne. La fonction est définie dans le contexte de la vue this . Il en est de même pour les variables qui sont définies dans la fonction.
Le mot clé page peut être utilisé soit dans un code HTML personnalisé, soit dans l'éditeur JavaScript en ligne d'une vue. Page fait référence à la vue de plus haut niveau de la page, ce qui signifie que les vues dans la page mais également celles imbriquées dans ces dernières sont accessibles. Pour les vues imbriquées, vous devez définir les chemins d'accès. Par exemple, si vous avez tenté d'accéder à l'ID de contrôle dans la vue au niveau de la page, vous devez spécifier le chemin comme suit:
Notez que cette approche de la définition d'une fonction n'utilise pas de mot clé avant le nom de la fonction, car cette dernière n'est pas ambiguë au niveau de la page. Notez également comment le mot clé page est utilisé à la place de this, et le chemin d'accès doit être défini dans la fonction. Dans l'exemple, il s'agit de l'ID de contrôle de la vue et de l'ID de contrôle de texte.
Appel de fonctions personnalisées
Après avoir défini une fonction à l'aide de l'une des méthodes décrites précédemment, vous pouvez accéder à votre fonction via les gestionnaires d'événements d'une vue. Pour appeler une fonction, utilisez ou dans les options de configuration du gestionnaire d'événements. Dans l'exemple suivant, votre fonction personnalisée est ajoutée au gestionnaire d'événements d'un bouton.
Lorsqu'une fonction est définie à plusieurs niveaux (à la fois dans la page et dans la vue, par exemple), la version appelée est celle située le plus près de la vue. Dans notre exemple, étant donné qu'elle est définie au niveau de la page et de la vue, la version appelée est la version définie dans la vue elle-même. Les fonctions définies au même niveau que l'appel sont recherchées en premier, puis la recherche remonte de façon séquentielle dans les niveaux jusqu'à ce qu'elle trouve la fonction définie.
Création de fonctions personnalisées avec des paramètres
Une fonction personnalisée peut également être transmise dans des arguments, ce qui permet de la réutiliser dans d'autres types de vues. setLabel est une méthode qui est fréquemment utilisée dans de nombreuses vues. Vous pouvez créer une fonction unique avec un paramètre.
Le paramètre a été attribué à la fonction changeLabel . Vous pouvez ensuite appeler une méthode sur ce contrôle. Dans ce cas, la méthode setLabel a été appelée pour remplacer le libellé. Vous pouvez appeler la fonction changeLabel à partir de l'un des événements d'une vue.
Une vue de texte a été ajoutée, qui appelle la fonction changeLabel à partir de l'événement. La fonction n'a pas besoin de la transmission d'un argument puisque la vue du contrôle est toujours transmise en tant que premier argument. Tant que la vue comporte la méthode appelée dans la fonction personnalisée, cette dernière fonctionne avec divers types de vues.
Pour plus d'informations sur les méthodes disponibles, voir API JavaScript du kit d'outils de l'interface utilisateur.