按照我之前的问题,我设法自己回答。我能够在delphi应用程序中的webbrowser上提供的网站上的输入字段中放置文本。有时在网站上有多种形式,大部分时间都在2左右,但它可能会出现在少数情况下。现在我的问题是。如何“测试”或找出所选输入字段所属的形式。让我们举一个例子。例如,gmail.com有2个输入字段:'Email'和'Passwd'我也知道这个网站上有2个表单。使用这样的代码,你可以选择其中一个:
doc:=webbrowser1.Document as IHTMLDocument2;
frm:=doc.forms.item(0,EmptyParam) as IHTMLFormElement;
fld:=frm.item('Email',EmptyParam) as IHTMLInputTextElement;
fld.value:=GetFieldValue(theForm,'test@gmail.com');
通过在第二行中将0更改为1,您在站点上拥有第二个表单。现在我想知道如何让程序自己找出输入字段所属的形式。你能尝试一下吗?或其他什么?有什么想法?
答案 0 :(得分:2)
fld.form
指向元素所属的形式。您可以使用doc.getElementFromId
或您喜欢的任何其他方法来获取元素而不使用表单来获取它,尽管如果它具有id,它是最简单的。
其他选项是搜索所有表单以检查它是否包含具有给定名称的字段,但如果某个字段存在于多个表单中,则无法帮助您。