Fórum Executar uma funcção javascript no webbrowser #559943
05/08/2016
0
Estou precisando executar uma função javascript numa pagina html via webbrowser, abaixo segue parte do HTML e rotina do delphi.
<script type="text/javascript">
function prepararInclusaoItem(id) {
myForm = document.getElementById('faturaForm');
myForm.action='faturamentoPrepararInclusaoItem.do';
myForm.id.value = id;
}
Aguardeço que possa ajudar.
Roberto Rodrigues
Curtir tópico
+ 0Posts
06/08/2016
Mateus Ribeiro
Segue uma função que usei a algum tempo:
procedure CallJavaScript_WB(WebBrowser: TWebBrowser; StrFun: String);
var
Doc: IHTMLDocument2;
HTMLWindow: IHTMLWindow2;
JSFn: string;
begin
Doc := WebBrowser.Document as IHTMLDocument2;
if not Assigned(Doc) then
Exit;
HTMLWindow := Doc.parentWindow;
if not Assigned(HTMLWindow) then
Exit;
try
JSFn := StrFun;
//JSFn := 'SetFont(''' + ComboBox1.Text + ''')';
HTMLWindow.execScript(JSFn, 'JavaScript');
except
ShowMessage('Erro na execução da função JavaScript');
end;
end;
Usa-se assim:
CallJavaScript_WB(WebBrowser1, 'prepararInclusaoItem(1)');
Se não funcionar avisa q ajusto... Boa sorte!
Gostei + 0
06/08/2016
Roberto Rodrigues
Boa tarde.
A rotina esta correta, mas não deu o efeito esperando que é chamar a próxima tela.
A tela é um GRID que tem um botão para selecionar, segue abaixo uma parte do html.
<tr>
<td style="font-size: 10px;">
1
</td>
<td style="font-size: 10px;">
1.0201.00.00
</td>
<td style="font-size: 10px;">
PERU
</td>
<td style="font-size: 10px;">
Modo 1
</td>
<td style="font-size: 10px;">
2.962,66<br />
2.962,66
</td>
<td style="font-size: 10px;">
29/01/2016
</td>
<td style="font-size: 10px;">
09/02/2016
</td>
<td style="font-size: 10px;">
<input type="image" title="Selecionar" src="images/avancar.gif" border="0" onClick="prepararInclusaoItem(5385222);" />
</td>
</tr>
Tem um Botão para clicar e chamar a função conforme sua orientação coloquei assim:
_carrega := 'prepararInclusaoItem('+_id+');' ; // prepararInclusaoItem(5385222)
CallJavaScript_WB(WebBrowser1, _carrega);
OBS: _id é o numero do registro no HTML.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)