PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE


Nouveauté WINDEV, WINDEV Mobile 23 !
  • Conditions d'utilisation
  • Appel de code WLangage depuis le code Javascript
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
ExécuteJS (Fonction)
En anglais : ExecuteJS
Exécute du code Javascript dans le contexte de la page Web affichée par un champ HTML.
Attention : L'option "Autoriser l'exécution des scripts JavaScript" doit être cochée dans l'onglet "Général" de la fenêtre de description du champ HTML. Attention : L'option "Interdit l'exécution des scripts JavaScript" doit être décochée dans l'onglet "Général" de la fenêtre de description du champ HTML.
Exemple
codeJS est chaîne = [
var maintenant = new Date();
alert('Nous sommes le : ' + maintenant);
]
ExécuteJS(HTM_MonChampHTML, codeJS)
WINDEV
codeJS est une chaîne = [
var maintenant = new Date();
return maintenant;
]

ExécuteJS(HTM_MonChampcodeJS, RésultatExecutionJS)

PROCÉDURE INTERNE RésultatExecutionJS(bSuccès est booléen, ValeurRetour)
SI PAS bSuccès
Erreur(ErreurInfo())
RETOUR
FIN
Info(ValeurRetour)
FIN
codeJS est une chaîne = [
var maintenant = new Date();
maintenant;
]

ExécuteJS(HTM_MonChampcodeJS, RésultatExecutionJS)

PROCÉDURE INTERNE RésultatExecutionJS(bSuccès est booléen, ValeurRetour)
SI PAS bSuccès
Erreur(ErreurInfo())
RETOUR
FIN
Info(ValeurRetour)
FIN
Syntaxe
<Résultat> = ExécuteJS(<Champ HTML> , <Code Javascript> [, <Nom de la procédure>])
<Résultat> : Booléen
  • Vrai si le code Javascript a été transmis pour exécution au champ,
  • Faux dans le cas contraire.
<Champ HTML> : Chaîne de caractères (avec ou sans guillemets)
Nom du champ HTML sur lequel le script Javascript doit être exécuté.
<Code Javascript> : Chaîne de caractères (avec guillemets)
Code Javascript à exécuter. Ce code est exécuté de manière asynchrone. Le résultat de l'exécution du code Javascript peut être connu grâce au paramètre <Nom de la procédure>.
La valeur retournée par le code Javascript correspond à la valeur de l'expression qui se trouve sur la dernière ligne du code Javascript.
<Nom de la procédure> : Chaîne de caractères (avec ou sans guillemets)
Procédure WLangage (également nommée "callback") permettant de connaître le résultat de l'exécution du code Javascript. Cette procédure est de la forme :
PROCEDURE <Nom de la Procédure>(bSuccès est un booléen, <ValeurRetour>)
Cette procédure est appelée une fois l'exécution du code Javascript terminée. Les paramètres de cette procédure sont :
  • <bSuccès> :
    • Vrai si l'exécution du code Javascript s'est correctement terminée,
    • Faux si l'exécution du code Javascript s'est terminée en erreur (erreur dans le code Javascript par exemple). Dans ce cas, il est possible d'obtenir le détail de l'erreur grâce à la fonction ErreurInfo.
      AndroidiPhone/iPad Remarque :
      • Android L'erreur renvoyée est détaillée.
      • iPhone/iPad L'erreur renvoyée est générique.
  • <ValeurRetour> contient la valeur de retour de l'exécution du code Javascript (si ce code renvoie une valeur).
Remarques
Android

Conditions d'utilisation

Cette fonction est disponible uniquement sur les appareils disposant d'une version d'Android supérieure ou égale à la version 4.4 (api level 19).
Si la fonction est utilisée avec une version antérieure du système, la procédure ne sera pas appelée.
Pour connaître la version du système Android sur laquelle s’exécute l’application, utilisez la fonction SysVersionAndroid.

Appel de code WLangage depuis le code Javascript

Il est possible d'appeler du code WLangage depuis un code Javascript exécuté via la fonction ExécuteJS ou via le code HTML contenu dans le champ HTML. Les manipulations à effectuer sont les suivantes :
  1. Dans l'onglet "Général" du champ HTML, cochez l'option "Autoriser l'appel de WLangage depuis le code HTML (fonction JavaScript WL.Execute)".
  2. Dans le code du HTML du champ, utilisez WL.Execute pour exécuter une procédure WLangage. La syntaxe à utiliser est la suivante :
    WL.Execute(<Nom procédure WLangage>, <Paramètres>)
    où :
    • <Nom procédure WLangage> correspond au nom de la procédure à exécuter.
    • <Paramètres> correspond à une chaîne de caractères à passer à la procédure.
Exemple :
  • Procédure WLangage
    PROCÉDURE ProcFromJS(t)
    ToastAffiche("Appelé depuis le JS : " + t)
  • Code du champ HTML :
    s est chaîne = [
    <html>
    <head>
    <title> Un exemple simple
    </title>
    <script>
    function myFunction()
    {
    WL.Execute("ProcFromJS","titaa");
    }
    </script>
    </head>
    <body>
    <h1> Voici une page HTML </h1>
    <p id="demo">Un paragraphe</p>
    <button type="button" onclick="myFunction()">Essayer</button>
    </body>
    </html>
    ]
    HTM_SansNom1 = s
Liste des exemples associés :
WM Dialogue HTML Exemples multiplateforme (WINDEV Mobile) : WM Dialogue HTML
[ + ] Cet exemple vous montre comment dialoguer avec un champ HTML.
Il utilise la fonction WLangage "ExecuteJS" et la fonction Javascript "WL.Execute".
Composantes
WINDEVEtats et Requêtes wd230obj.dll
Android wd230android.jar
Version minimum requise
  • Version 23
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire