4D v15.4WA Evaluate JavaScript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v15.4
WA Evaluate JavaScript
|
WA Evaluate JavaScript ( {* ;} objet ; codeJS {; type} ) -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
* | Opérateur |
![]() |
Si spécifié, objet est un nom d'objet (chaîne) Si omis, objet est une variable | |||||
objet | Objet de formulaire |
![]() |
Nom d'objet (si * est spécifié) ou Variable (si * est omis) | |||||
codeJS | Chaîne |
![]() |
Code JavaScript | |||||
type | Entier long |
![]() |
Type dans lequel convertir le résultat | |||||
Résultat | Objet |
![]() |
Résultat de l’exécution | |||||
La commande WA Evaluate 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.
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 date | Entier long | 4 |
Est une heure | Entier long | 11 |
Important : La manipulation de résultats de type complexe (objets, dates...) est possible uniquement si la zone Web utilise le moteur de rendu Web intégré.
Cet exemple de code JavaScript provoque l'affichage de l'url précédent :
$résultat:=WA Evaluate 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 :
If(Form event=On Load)
WA OPEN URL(*;"Web Area";"C:\\myBase\\index.html")
End if
Vous pouvez alors évaluer le code JavaScript depuis 4D :
$Eval1:=WA Evaluate JavaScript(*;"Web Area";"evalLong()";Is longint)
//$Eval1 = 123
//$Eval1 = "123" si le type est omis
$Eval2:=WA Evaluate JavaScript(*;"Web Area";"evalTexte()";Is text)
//$Eval2 = "456"
$Eval3:=WA Evaluate JavaScript(*;"Web Area";"evalObjet()";Is object)
//$Eval3 = {"a":1,"b":"hello world"}
$Eval4:=WA Evaluate JavaScript(*;"Web Area";"evalDate()";Is date)
//$Eval4 = 21/06/13
//$Eval4 = "2013-06-21T14:45:09.694Z" si le type est omis
Produit : 4D
Thème : Zone Web
Numéro :
1029
Créé : 4D v11 SQL Release 2
Modifié : 4D v14
Renommé : 4D v14
4D - Langage ( 4D v15.4)
4D - Langage ( 4D v15.3)