ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

This content has been translated automatically.  Click here  to view the French version.
Help / WLanguage / WLanguage functions / Standard functions / Windows functions / Miscellaneous WINDEV functions
  • Use conditions
  • Calling WLanguage code from the JavaScript code
WINDEV
WindowsLinuxJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac Catalyst
Others
Stored procedures
Runs JavaScript code in the context of the Web page displayed by an HTML Display control.
Warning The "Don't allow the execution of JavaScript scripts" option must be unchecked in the "General" tab of the HTML Display control description window.
Example
codeJS is string = [
var Maintenant = new Date();
alert('Nous sommes le : ' + Maintenant);
]
ExecuteJS(HTM_MonChampHTML, codeJS)
codeJS is string = [
var Maintenant = new Date();
var resultat = '' + Maintenant;
''+Maintenant;
]
ExecuteJS(HTM_MonChamp, codeJS, ExécuteJS_Callback)
INTERNAL PROCEDURE ExécuteJS_Callback(bSuccès is boolean, ValeurRetour is string)
	IF NOT bSuccès
		Error(ErrorInfo())
		RETURN
	END
	Info(ValeurRetour)
END
Syntax
<Result> = ExecuteJS(<HTML Display control> , <JavaScript code> [, <WLanguage procedure>])
<Result>: Boolean
  • True if the JavaScript code was transmitted for execution to the control,
  • False otherwise.
<HTML Display control>: Control name
Name of the HTML Display control on which the JavaScript script will be executed.
<JavaScript code>: Character string
JavaScript code to execute. This code is run in asynchronous mode. The result of the code execution can be retrieved via the <WLanguage procedure> parameter.
The value returned by the JavaScript code corresponds to the value of the expression found in the last line of code. Do not use "return". The expression to be retrieved must be a string.
<WLanguage procedure>: Optional procedure name
WLanguage procedure ("callback") used to find out the result of code execution. This procedure has the following format:
PROCEDURE <Procedure name>(bSuccess is boolean, ReturnValue is string)
This procedure is called once the JavaScript code has been executed. The parameters of this procedure are:
  • <bSuccess>:
    • True if the JavaScript code was successfully executed,
    • False if the execution of JavaScript code generated an error (e.g., error in the JavaScript code). In that case, to get more details on the error, use ErrorInfo.
      AndroidiPhone/iPad Remark:
      • Android A detailed error is returned.
      • iPhone/iPad A generic error is returned.
  • <ReturnValue> contains the value of the last expression of the JavaScript code (returned value).
Remarks
Android

Use conditions

This function is only available on devices running Android 4.4 or later (api level 19).
The procedure will not be called if the function is used with an earlier system version.
To determine the version of Android the application is running on, use SysAndroidVersion.

Calling WLanguage code from the JavaScript code

You can call WLanguage code from a JavaScript code executed via ExecuteJS or via the HTML code contained in the HTML Display control. The following operations must be performed:
  1. In the "General" tab of the HTML Display control, check "Allow calling WLanguage code from HTML code (JavaScript WL.Execute function)".
  2. In the HTML code of control, use WL.Execute to run a WLanguage procedure. The following syntax must be used:
    WL.Execute(<WLanguage procedure name>, <Parameter 1>) [, ... [, <Parameter N>]]] )
    where:
    • <WLanguage procedure name> corresponds to the name of the procedure to be executed.
    • <Parameter N> corresponds to the different parameters to be passed to the procedure:
      • Number of parameters:
        • WindowsiPhone/iPad between 0 and N.
        • Android between 0 and 10.
      • Type of parameters:
        • WindowsiPhone/iPad The parameters of the WLanguage procedure will be passed according to their type: boolean, string, number, null.
        • Android The parameters of the WLanguage procedure will always be passed as strings.
Example:
  • WLanguage procedure
    PROCEDURE ProcFromJS(t)
    ToastDisplay("Appelé depuis le JS : " + t)
  • Code of the HTML control:
    s is string = [
    	<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
Related Examples:
WM HTML Dialog Cross-platform examples (WINDEV Mobile): WM HTML Dialog
[ + ] This example explains how to dialog with an HTML control.
It is using the WLanguage "ExecuteJS" function and the Javascript "WL.Execute" function.
Business / UI classification: UI Code
Component: wd300obj.dll
Minimum version required
  • Version 23
This page is also available for…
Comments
Video ExecuteJs
https://youtu.be/_ZTkcLnfyYY

https://windevdesenvolvimento.blogspot.com/2019/02/dicas-2029-windev-dicas-87-executejs.html

sCODIGO_JAVA_SCRIPT is string=[
alert( ' Mensage do Java Script dentro do Windev ' );
]

ExecuteJS(HTM_CONTROL,sCODIGO_JAVA_SCRIPT)
amarildo
28 Feb. 2019

Last update: 03/27/2025

Send a report | Local help