如何在WebBrowser控件中提交表单

本文关键字:提交 表单 控件 WebBrowser | 更新日期: 2023-09-27 18:22:29

如何在WebBrowser控件内以编程方式设置输入元素值?

例如,我有一个HTML页面,比如:

<form method="post" action="...aspx" enctype="multipart/form-data" id="mainForm">
    <input type="file" id="file" />
    <input type="submit" id="submit" value="Submit it" />
</form>

如何通过C#代码提交?我尝试了一些东西:

private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 
{
   var doc = webBrowser1.Document;
   var input = doc.GetElementById("file");
   input.SetAttribute("value", @"C:'foo.baa");
   doc.GetElementById("mainForm").InvokeMember("submit");
}

但它不起作用,输入值没有设置,表单也没有提交。我希望这是干净的。提前谢谢。

如何在WebBrowser控件中提交表单

试试这个:

HtmlElement loBtn = (HtmlElement)loWebBrowser.Document.GetElementById("btnSubmit");
loBtn .InvokeMember("click");