在Delphi的TWebBrowser中使用EvaluateJavaScript插入文本值的问题

欢迎加入全网最大Delphi 技术交流群 682628230

在使用Delphi FMX的TWebBrowser组件向网页表单插入数据时,遇到无法正确设置HTML输入元素值的问题。该应用运行于Android平台,目标是向类型为文本的输入框(id为txtCPF)插入字符串值。

 

尝试通过EvaluateJavaScript方法直接设置文本框值:

wbConsultaCPF.EvaluateJavaScript('document.getElementById("txtCPF").value = "012345";');

这会导致仅显示文本“012345”在一个空白屏幕上,而非正确填充到表单元素中。若不使用引号而直接设整数值,则首位零会被截断。

解决

创建一个立即执行的匿名函数来设置值,可以解决上述问题:

wbConsultaCPF.EvaluateJavaScript('(function() { document.getElementById("txtCPF").value = "012345"; })();');

这种做法确保了字符串值能够正确地被插入到指定的HTML输入框内,解决了直接赋值时出现的显示异常问题。此方法在iOS平台上同样适用且表现一致。

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享