想做一个功能,是对一个页面的操作,具体如何:
1.我用WebBrowser加载页面;
2.用代码实现网页内部点击功能;加载页面当然是没问题的;
但第二部却卡住了
网页代码如下:
<ul class="item-list-tabs item-list-tabs-flexible clearfix">
<li ><a href="#" onclick="changeDBOnline(this,'ALL')" hidefocus="true">所有订单</a></li>
<li ><a href="#" onclick="changeDBOnline(this,'NOT_PAID')" hidefocus="true">等待买家付款</a></li>
<li ><a href="#" onclick="changeDBOnline(this,'PAID')" hidefocus="true">等待发货</a></li>
</ul>
我想做的是对这些列表做点击操作,比如:页面默认是 所有订单 项显示,而我想加载网页后直接显现 等待发货。因为本人对delphi刚开始学,所以希望大家给点帮助,我尝试了很久用WebBrowser却不行,找了很多资料也没搞定。
1.我用WebBrowser加载页面;
2.用代码实现网页内部点击功能;加载页面当然是没问题的;
但第二部却卡住了
网页代码如下:
<ul class="item-list-tabs item-list-tabs-flexible clearfix">
<li ><a href="#" onclick="changeDBOnline(this,'ALL')" hidefocus="true">所有订单</a></li>
<li ><a href="#" onclick="changeDBOnline(this,'NOT_PAID')" hidefocus="true">等待买家付款</a></li>
<li ><a href="#" onclick="changeDBOnline(this,'PAID')" hidefocus="true">等待发货</a></li>
</ul>
我想做的是对这些列表做点击操作,比如:页面默认是 所有订单 项显示,而我想加载网页后直接显现 等待发货。因为本人对delphi刚开始学,所以希望大家给点帮助,我尝试了很久用WebBrowser却不行,找了很多资料也没搞定。
procedure TForm1.Button2Click(Sender: TObject);
var
doc:ihtmldocument2;
Name,Password:IHTMLInputElement;
tem : Olevariant;begin if WebBrowser1.Busy then
self.WebBrowser1.Stop;
WebBrowser1.Navigate('http://www.xxx.com/login.php');
while webbrowser1.ReadyState<>READYSTATE_COMPLETE do
Application.ProcessMessages;
if assigned(WebBrowser1) then
begin
doc := WebBrowser1.Document as ihtmldocument2;
Name := doc.all.item('pwuser',0) as IHTMLInputElement;
password := doc.all.item('pwpwd',0) as IHTMLInputElement;
if EdtName.Text <> '' then
Name.value := EdtName.Text
else
EdtName.SetFocus;
if EdtPwd.Text <> '' then
Password.value := EdtPwd.Text
else
EdtPwd.SetFocus; tem := doc.all.item('submit',0);
sleep(3000);
tem.click; end;
end;这是模拟论坛登录过程,供lz参考