Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com

Accueil

 
4D v20.6
WA Evaluer JavaScript

WA Evaluer JavaScript 


 

WA Evaluer JavaScript ( {* ;} objet ; codeJS {; type} ) -> Résultat 
Paramètre Type   Description
Opérateur in Si spécifié, objet est un nom d'objet (chaîne) Si omis, objet est une variable
objet  Objet de formulaire in Nom d'objet (si * est spécifié) ou Variable (si * est omis)
codeJS  Chaîne in Code JavaScript
type  Entier long in Type dans lequel convertir le résultat
Résultat  Date, Objet, Pointeur, Réel, Texte, Heure in Résultat de l’exécution

La commande WA Evaluer JavaScript exécute dans la zone Web désignée par les paramètres * et objet le code JavaScript passé dans codeJS et retourne le résultat. Cette commande doit être appelée après le chargement complet de la page (l'événement formulaire Sur fin chargement URL doit avoir été généré).

Par défaut, la commande retourne le résultat sous forme de chaîne. Vous pouvez toutefois préciser le typage de la valeur retournée à l’aide du paramètre optionnel type. Pour cela, vous pouvez passer dans type une des constantes suivantes, placées dans le thème "Types champs et variables" :

Constante Type Valeur
Est un booléen Entier long 6
Est un entier long Entier long 9
Est un numérique Entier long 1
Est un objet Entier long 38
Est un texte Entier long 2
Est une collection Entier long 42
Est une date Entier long 4
Est une heure Entier long 11

Attention : L'utilisation de cette commande pour appeler directement une fonction JavaScript qui affiche un dialogue (alert(), print()...) n'est pas recommandée car l'utilisateur ne peut pas interagir avec la zone Web pendant l'exécution du code 4D. Si vous devez implémenter une telle interface, vous pouvez par exemple appeler setTimeout(function(){alert();}, 50)) pour laisser l'exécution du code 4D se terminer et permettre l'interaction de l'utilisateur. 

 

Cet exemple de code JavaScript provoque l'affichage de l'url précédent :

 $résultat:=WA Evaluer JavaScript(MaZoneW;"history.back()")

Cet exemple montre quelques évaluations avec conversion des valeurs reçues.

Des fonctions JavaScript sont placées dans un fichier html :

<!DOCTYPE html>
<html>
    <head>
        <script>
        function evalLong(){
            return 123;
        }
        function evalTexte(){
            return "456";
        }
        function evalObjet(){
            return {a:1,b:"hello world"};
        }
        function evalDate(){
            return new Date();
        }
    </script>
    </head>
    <body>
        TEST PAGE
    </body>
</html>

Vous écrivez dans la méthode du formulaire 4D :

 Si(Evenement formulaire code=Sur chargement)
    WA OUVRIR URL(*;"Web Area";"C:\\myBase\\index.html")
 Fin de si

Vous pouvez alors évaluer le code JavaScript depuis 4D :

 $Eval1:=WA Evaluer JavaScript(*;"Web Area";"evalLong()";Est un entier long)
     //$Eval1 = 123
     //$Eval1 = "123" si le type est omis
 $Eval2:=WA Evaluer JavaScript(*;"Web Area";"evalTexte()";Est un texte)
     //$Eval2 = "456"
 $Eval3:=WA Evaluer JavaScript(*;"Web Area";"evalObjet()";Est un objet)
     //$Eval3 = {"a":1,"b":"hello world"}
 $Eval4:=WA Evaluer JavaScript(*;"Web Area";"evalDate()";Est une date)
     //$Eval4 = 21/06/13
     //$Eval4 = "2013-06-21T14:45:09.694Z" si le type est omis



Voir aussi  

WA EXECUTER FONCTION JAVASCRIPT

 
PROPRIÉTÉS 

Produit : 4D
Thème : Zone Web
Numéro : 1029
Nom intl. : WA Evaluate JavaScript

 
PAGE CONTENTS 
 
HISTORIQUE 

Créé : 4D v11 SQL Release 2
Modifié : 4D v14
Renommé : 4D v14 (WA Executer JavaScript)
Modifié : 4D v16 R4

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v20)
4D - Langage ( 4D v20.1)
4D - Langage ( 4D v20.2)
4D - Langage ( 4D v20.3)
4D - Langage ( 4D v20.4)
4D - Langage ( 4D v20.5)
4D - Langage ( 4D v20.6)