2017-10-28 163 views
0

我需要您的幫助:-)檢查HTML中是否存在ID

我需要檢查HTML代碼中是否存在具有「提交」ID的標記。 我這樣做:

If Not oie.Document.getelementbyid("submit") Is Nothing Then 
MsgBox oie.Document.getelementbyid("submit") 
Else: MsgBox "not found" 
End If 

但是這樣的檢查將正常工作只有在「提交」 ID是在代碼中,如果沒有任何的代碼,那麼錯誤「運行時錯誤所需的424對象」。

如何檢查ID是否存在,並在代碼中出現ID「submit」時進行DO WHILE循環?

+0

我試試:'如果則IsObject(oie.Document.getelementbyid( 「提交」))然後 MSGBOX oie.Document.getelementbyid( 「提交」)否則 中:MsgBox 「未找到」 結束If'和它的工作原理爲了我。這是否正確的代碼來檢查ID存在? – footballplayer

回答

0

我不熟悉處理HTML元素,但也許這樣的事情可能會爲你完成這項工作嗎?

Dim hElement as variant 'Declare it as the actual object name unlike what I've done, if you're using early binding' 

On error resume next 
Set hElement = 
oie.Document.getelementbyid("submit") 
On error goto 0 

If not (hElement is nothing) then 

或者,也許你可以通過HTML元素的頁面上收集循環,並檢查他們的身份證/其他一些屬性,是獨一無二的,你要尋找的「提交」元素?

喜歡的東西:

Dim hElement as variant 
Dim SubmitExists as boolean 
SubmitExists = false 

For each hElement in oie.document.HTMLelements 

SubmitExists = (hElement.ID = "Submit") 

Next hElement 

我並不是說會有一個名爲「HTML元素」收集和所謂的「ID」的元素屬性(我做起來作爲一個例子來說明的原則)。檢查收集和屬性實際名稱的最佳位置是Microsoft的文檔或對象瀏覽器。