存在下面一段HTML代码、 <table width=100%>
<tr class=title>
<td width=50%>编号:20100501</td>
<td width=50%>19023059</td>
</tr>
<tr class=title>
<td width=50%>查询周期:2010年5月1日-2010年5月31日</td>
<td width=50%>查询日期:2010年6月9日</td>
</tr>
</table>我用webbrowser控件想获得“查询周期”这一个单元格的内容(即:查询周期:2010年5月1日-2010年5月31日)、于是有下面的代码procedure TForm1.FormClick(Sender: TObject);
Var
ii:Cardinal;
ObjTmp:OleVariant;
begin
{wb1为webbrowser控件}
For ii:=0 To wb1.OleObject.Document.getElementsByTagName('td').Length - 1 Do
Begin
ObjTmp:=wb1.OleObject.Document.getElementsByTagName('td').item(ii);
If Pos('查询周期',objtmp.innerText)>0 Then
Begin
ShowMessage(ObjTmp.innerText);
Break;
end;
end;
end;然而为什么会显示出整个table的文本而不是这个单元格的文本呢?
<tr class=title>
<td width=50%>编号:20100501</td>
<td width=50%>19023059</td>
</tr>
<tr class=title>
<td width=50%>查询周期:2010年5月1日-2010年5月31日</td>
<td width=50%>查询日期:2010年6月9日</td>
</tr>
</table>我用webbrowser控件想获得“查询周期”这一个单元格的内容(即:查询周期:2010年5月1日-2010年5月31日)、于是有下面的代码procedure TForm1.FormClick(Sender: TObject);
Var
ii:Cardinal;
ObjTmp:OleVariant;
begin
{wb1为webbrowser控件}
For ii:=0 To wb1.OleObject.Document.getElementsByTagName('td').Length - 1 Do
Begin
ObjTmp:=wb1.OleObject.Document.getElementsByTagName('td').item(ii);
If Pos('查询周期',objtmp.innerText)>0 Then
Begin
ShowMessage(ObjTmp.innerText);
Break;
end;
end;
end;然而为什么会显示出整个table的文本而不是这个单元格的文本呢?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货