检查带ID的元素是否有值

时间:2012-11-18 16:43:04

标签: delphi delphi-xe2 twebbrowser

如何检查元素 p 中的“某些文字值” Id =“SomeID”是否存在?

<p id="SomeID" class="error" style="display: none"></p>

<p id="SomeID" class="error" style="display: none">Some text value</p>

这是一种函数形式..

function ElementIdText(Web:TembeddedWB; Id:string):string;
var
  node: string;
begin
  if Assigned(Web.Document) and web.DocumentLoaded then begin
  node:=Web.OleObject.Document.GetElementByID(Id).innerText;
  if not VarIsNull(Node) and not VarIsClear(Node) and not AnsiSameStr(node,'') then
  result:=node;
  end;
end;

1 个答案:

答案 0 :(得分:0)

给出

<p id="SomeID" class="error" style="display: none"></p>
<p id="SomeOtherID" class="error" style="display: none">Some text value</p>

要检索属性,请使用:

ShowMessage(WebBrowser1.OleObject.Document.
    GetElementByID('SomeOtherID').getAttribute('style').Display);

将输出'none'。

要获取段落的文本,您可以使用:

ShowMessage(WebBrowser1.OleObject.Document.
    GetElementByID('SomeOtherID').innerText);