[英]Windows Forms WebBrowser control and iframes
我正在嘗試創建一個軟件來或多或少地自動化網頁上的表單填充 - 我決定在System.Windows.Forms
使用WebBrowser控件。 這很好用,我可以通過webbrowser.Document
輕松操作DOM等等。 然而不幸的是,我正在進行自動化的網站有一個文件上傳,它在iframe中運行 - 這就是我被卡住的地方,我根本無法弄清楚如何能夠操縱iframe的DOM內部的元素。
理想情況下,我想做的是:
HtmlElement iframe = browser.Document.GetElementById("iframe_id");
iframe.InnerDocument.GetElementById("file_upload_input").SetAttribute("value", "myfile.txt");
然后在iframe中提交表單當然 - 但是就我所見, HtmlElement
上沒有InnerDocument
屬性,也沒有我發現我可以將HtmlElement
為可以訪問內部DOM的類型。
怎么做的?
請嘗試使用“frames”集合。 來自MSDN :
iframe元素用作文檔中的文檔,或者像浮動框架。 frames集合提供對iframe內容的訪問。 使用frames集合讀取或寫入iframe中包含的元素。 例如,訪問iframe中body對象的backgroundColor樣式的語法是:
sColor = document.frames(“sFrameName”)。document.body.style.backgroundColor;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.