Executa o envio de informações para a pagina/componente HTML carregado no componente TWebEngine que esta configurado para a Porta do TWebChannel. Assim é possível, por exemplo, injetar um trecho JavaScript na página via ADVPL.
Sintaxe
advplToJs( < cCodeType >, < cContent > )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cCodeType | caractere | Indica o tipo de mensagem que será enviada à página HTML. | X |
|
cContent | caractere | Indica o conteudo que será enviado à pagina HTML. | X |
|
Title
A utilização deste componente depende do arquivo totvstec.js, que será também distribuído juntamente com a build superior à 131227A, assim que ela for disponibilizada oficialmente no Portal (ainda sem data definida).
Observações
A instrução é "injetada" via ADVPL através do método oWebChannel.advplToJs, e é efetivamente inserido à partir do método dialog.advplToJs.connect, que deve ser inserido na página/componente HTML carregada. Veja com atenção o exemplo e a observação abaixo abaixo:
// Techo JavaScript // Conecta WebSocket Server totvstec.connectWS( function(){ // Carrega mensageria exclusiva da pagina dialog.advplToJs.connect(function (codeType, codeContent, objectName) { if (codeType == "html") { var form = document.getElementById("mainForm"); form.innerHTML += codeContent; } else if (codeType == "JQuery_CSS") { // Aplica CSS do JQuery Mobile apos criacao dos campos $('.ui-page').trigger('create'); } }); // Envia sinal informando termino da carga dialog.jsToAdvpl("page_started", "Pagina inicializada"); });
- Os tipos (cCodeType) "js" e "css", já são tratados automaticamente pelo arquivo totvstec.js, os demais tipos devem ser tratados diretamente pelo desenvolvedor, exatamente como o "JQuery_CSS", demonstrado no exemplo acima.
Exemplos
code := "function myFunc(){alert('myFunc');}" oWebChannel:advplToJs("js", code)