par Jef Sutherland
Apprenez à faire une validation de formulaires côté client et à créer des formulaires
de courrier électronique avec Net.Data et JavaScript
Dans
les articles “ Utilisation de formulaires HTML avec Net.Data ”,
NEWSMAGAZINE, juin 1999 et “ Using RPG with Net.Data”, NEWS/400, mars
1999, nous avons vu comment utiliser Net.Data avec des programmes AS/400 et des
formulaires HTML (Hypertext Markup Language) pour créer des pages Web
interactives. Cet article s'intéresse à l'utilisation du langage JavaScript
avec les macros Net.Data et les formulaires HTML pour faire une validation de
formulaires côté client et créer une formulaire de courrier électronique. Si
Net.Data est une nouveauté pour vous, visitez la home page Net.Data d'IBM (http://www.as400.ibm.com/netdata)
pour plus d'informations.
Au préalable, il est bon de définir
quelques termes Java pour mieux comprendre où JavaScript s'inscrit dans la structure
Java.
- Java, comme vous ne l'ignorez certainement pas, est un langage de programmation évolué répandu, de Sun Microsystems, présent sur de nombreuses plates-formes dont l'AS/400.
- Les applets Java sont des objets source Java compilés. On peut les exécuter comme programmes natifs ou intégrés dans un document HTML et exécutés dans un navigateur Java.
-
JavaScript est un langage
de scripting orienté objet, développé par Netscape, qui s'exécute sur un
navigateur pour offrir des fonctions améliorées n'existant pas en HTML standard.
Ainsi, JavaScript peut accéder à un navigateur, et le contrôler pour créer
de nouvelles fenêtres, cadres et messages pop-up (comme le message d'erreur
de l'exemple de macro Net.Data de cet article). JavaScript est fréquemment
utilisé pour l'animation et le contrôle d'images sur des sites Web, ainsi
qu'avec les “ cookies ”, de petits fragments d'informations sur l'utilisateur
du Web, stockés sur l'ordinateur d'un client.
Contrairement à un programme CGI (Common Gateway Interface) ou une passerelle (Net.Data par exemple), qui s'exécute et est traité sur le serveur, le code JavaScript fait partie du document HTML et s'exécute côté client. JavaScript est une fonction avancée que certains navigateurs ne reconnaissent pas. Donc, assurez-vous que votre navigateur peut interpréter et exécuter ce langage de scripting. J'ai utilisé JavaScript avec les dernières versions de Netscape Navigator et de Microsoft Internet Explorer et ai constaté que les deux supportent certaines fonctions JavaScript de manière différente. D'où l'intérêt de tester vos documents HTML JavaScript avec différents navigateurs.
Comme JavaScript effectue le traitement côté client, les zones des formulaires HTML peuvent sauter la validation côté serveur, pour alléger l'application. Pour illustrer l'utilisation de JavaScript, nous verrons une macro Net.Data avec des formulaires HTML imbriqués et JavaScript (pour plus d'informations sur les formulaires HTML imbriqués, voir “ Utilisation de formulaires HTML avec Net.Data ”). La figure 1 montre la totalité du fichier de macros Net.Data de notre exemple. Le projet
- utilise une macro Net.Data pour afficher un formulaire HTML comportant une zone de saisie de numéro de pièce (figure 2) ;
- utilise une fonction JavaScript pour s'assurer de la saisie du numéro de pièce ;
- utilise un programme AS/400 pour extraire des informations supplémentaires sur la pièce de l'AS/400 au moment de la saisie de son numéro (remarque : il n'est fait référence à cette partie de l'application que dans le code source. Le code de cet article est purement illustratif et ne représente pas une application complète.) ;
- affiche un second formulaire