Delphi Chromium,如何在html页面上模拟点击按钮

人气:659 发布:2022-10-16 标签: browser delphi chromium tchromium

问题描述

我在Delphi 10上使用TChromium组件。 我需要将文本从TMemo传输到html中的文本区域,并在此页面上模拟点击按钮。

我一直在试,但不管用

chromium1.Browser.MainFrame.ExecuteJavaScript('document.all(id_4).value='+Memo1.text+';', '', 0);
Chromium1.Browser.MainFrame.ExecuteJavaScript('id_2.click();', '', 0);

基本上我需要下面的代码,但在Delphi 10中使用TChromium。下面的代码是在Delphi7上使用TWebBrownser的。

WebBrowser1.OleObject.Document.all.Item('id_4', 0).value := memo1.Text;
WebBrowser1.OleObject.Document.all.Item('id_2', 0).click;

推荐答案

如果Memo1包含文本:

包含空格。

...然后:

document.all(id_4).value=With space in it.;

...不是有效的JavaScript,因为With是未定义的。还有下面的三个代币加圆点。您必须为其分配文本,因此在Delphi中您必须使用:

'document.all( id_4 ).value= "'+ Memo1.Text+ '";'

...作为文本,因为这样它就会变成有效的JavaScript:

document.all( id_4 ).value= "With space in it.";

当然:如果Memo1的文本本身包含",则必须对其进行处理。

202