設計一網址自動登陸,登入網址的原始碼顯示按鈕如下:
<button id="btnLogin" class="button-2" style="TEXT-ALIGN: center;" onclick="jhqy_land(1);return false;" type="button">登 錄</button>
我在delphi程式中參考:
doc := UiWebBrowser1.document as ihtmldocument2;
userinputelement := (doc.all.item('username', 0) as ihtmlinputelement);
userinputelement.value := 'test';
pwdinputelement := (doc.all.item('password2', 0) as ihtmlinputelement);
pwdinputelement.value := 'test';
UIWebBrowser1.OleObject.getElementByID('btnlogin').click;
運行前面正常,最后按鈕自動提交時,總是出現
method "getelementbyid" not supported by automation object
請問各位高手,怎么解決登入啊
uj5u.com熱心網友回復:
vari : word;
Docs : OleVariant;
DOcs:= WEB.OleObject.document.getElementsByTagName('button');
for i:= 0 to docs.length-1 do
begin
if (docs.item(i).id='btnLogin') and (pos('登 錄',docs.item(i).value)<>0) then
begin
docs.item(i).click;
break;
end;
end;
uj5u.com熱心網友回復:
olevariant型別在編譯時delphi不檢查語法,直接執行...這樣用是因為getemementbyid這類函式不是delphi自帶的.uj5u.com熱心網友回復:
應該注意一下大小寫的問題。uj5u.com熱心網友回復:
還是寫點代碼吧,我用過的應該 OK 的:
var btn : IHTMLInputButtonElement;
btn := doc.all.item('btnLogin', 0) as IHTMLInputButtonElement;
(btn as IHtmlElement).click;
uj5u.com熱心網友回復:
OleObject.document.getElementByID('btnlogin').click;樓主大概不會回來了。學習樓上兩位的代碼了。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/124548.html
標籤:網絡通信/分布式開發
上一篇:delphiXE中如何顯示access中的word檔案
下一篇:idudpserver的問題
