Création et réutilisation des fonctions JavaScript

Un objet de script est un objet que vous pouvez utiliser pour stocker des fonctions JavaScript et des valeurs séparément de l’objet de formulaire proprement dit. En général, on utilise un objet de script pour créer des fonctions et des méthodes personnalisées que l’on veut utiliser sous forme de script JavaScript en différents endroits du formulaire. Cette technique réduit le nombre total de scripts requis pour réaliser des actions répétitives.

L’objet de script reconnaît uniquement les scripts écrits en langage JavaScript, mais il n’y a aucune restriction quant au lieu d’exécution des scripts (à condition d’avoir configuré le langage de script JavaScript pour l’événement faisant appel à l’objet de script).

Acrobat et Forms  traitent les scripts à partir d’un objet de script de la même manière, mais des différences demeurent.

Seuls les scripts destinés à être exécutés sur le client peuvent utiliser des objets de script destinés à être exécutés sur le client, et réciproquement.

Pour créer un objet de script

La création d’un objet de script se fait en deux temps. La première étape consiste à ajouter l’objet proprement dit à la conception de formulaire, et la seconde étape consiste à écrire le script que vous souhaitez enregistrer dans l’objet de script.

  1. Créez un nouveau formulaire ou ouvrez un formulaire existant.

  2. Dans la palette Hiérarchie, cliquez à l’aide du bouton droit sur un objet de niveau formulaire ou un objet de niveau sous-formulaire et choisissez Insérer un objet de script.

    Afficher le graphique en taille réelle
    A. Objet au niveau du formulaire B. Objet au niveau du sous-formulaireC. Objet de script au niveau du sous-formulaire D. Objet de script au niveau du formulaire
  3. (Facultatif) Cliquez à l’aide du bouton droit sur l’objet de script, et choisissez Renommer l’objet.

Pour ajouter un script à un objet de script

Une fois que vous avez un objet de script dans votre formulaire, vous pouvez ajouter des scripts à l’aide de l’éditeur de script.

  1. Sélectionnez l’objet de script dans la palette Hiérarchie.

    L’éditeur de script affiche à la fois une valeur de l’objet de script dans la liste Afficher, et la valeur JavaScript dans la liste Langage. Vous ne pouvez modifier aucune de ces valeurs.

  2. Entrez votre script dans le champ Source du script.

  3. Cliquez sur l’onglet Aperçu PDF pour tester le formulaire.

Exemple

Créez, par exemple, un objet de script appelé feedback contenant la fonction suivante :

function emptyCheck(oField) { 
 
    if ((oField.rawValue == null) || (oField.rawValue == "")) { 
        xfa.host.messageBox("You must input a value for this field.", "Error Message", 3); 
    } 
}

Pour référencer les fonctions JavaScript stockées dans un objet de script

Après avoir ajouté des scripts à un objet de script, vous pouvez référencer l’objet de script à partir de tout événement compatible avec les scripts JavaScript.

  1. Sélectionnez un objet de votre formulaire et choisissez un événement dans la liste Afficher.

  2. Créez une référence à l’objet de script et aux fonctions voulues dans l’objet de script. La syntaxe générique suivante suppose que l’objet dans lequel vous référencez l’objet de script est au même niveau que l’objet de script dans la hiérarchie du formulaire ou que l’objet de script figure au niveau supérieur de la hiérarchie.

    script_object.function_name(parameter1, ...);

  3. Appliquez le nouveau script à l’objet de formulaire et testez-le en prévisualisant le formulaire à partir du panneau Aperçu PDF.

Comme lors du référencement d’autres objets dans un formulaire, vous devez spécifier une syntaxe valide lorsque vous référencez l’objet de script en indiquant son emplacement au sein de la hiérarchie. Pour plus d’informations sur la référence à des objets dans des scripts, voir Référence aux propriétés et aux valeurs d’objet.

Exemple

En vous basant sur l’exemple d’objet de script de la section Pour ajouter un script à un objet de script, appliquez le script JavaScript suivant à l’événement exit pour un champ de texte. Testez le formulaire à partir du panneau Aperçu PDF.