2012-02-16 106 views
1

我知道在Web瀏覽器中,您可以使用Document.GetElementById來查找元素的name屬性,但我想使用idclass屬性在網頁中搜索元素,在WebBrowser中如何執行此操作?我想讓它點擊圖片標籤。如何使用WebBrowser通過ID或類屬性獲取元素?

<td id="button1-cell"><img src="/static/button1.png" alt="Button 1" id="but1"></td> 

此外,是否有可能InvokeMember("click")上的div?

回答

2

GetElementById's documentation表示它通過ID獲取元素,而不是名稱。如果你想通過名字找到一個元素,你可以使用

webBrowser1.Document.All("name") 
+0

我不知道爲什麼,但對於我在Visual Basic中,它使用它通過它的名稱屬性獲取元素。如果我試圖使用它來獲得一個id它會拋出一個錯誤。 – Alex 2012-02-16 15:33:58

+0

它適合我。我拿你的例子,並將其粘貼到一個示例HTML頁面,並能夠做到這一點:MessageBox.Show(WebBrowser1.Document.GetElementById(「but1」)。GetAttribute(「src」))。它看起來像getElementById試圖變得聰明,如果該ID不存在將使用該名稱。在測試之前,您可能想要確保您在IE中清除緩存,因爲在測試期間遇到問題時加載了緩存版本的頁面。 – 2012-02-16 15:49:50

+0

但是如何點擊圖片/按鈕?我嘗試了'MasterBrowser.Document.GetElementById(「but1」)。InvokeMember(「click」)''但它拋出了「**對象引用未設置爲對象的實例。**」 – Alex 2012-02-16 15:53:10

相關問題