读书人

c# webbrowser 页面跳转

发布时间: 2013-07-20 11:07:48 作者: rapoo

c# webbrowser 页面跳转求助



private void button1_Click(object sender, EventArgs e)
{
webBrowser1.DocumentCompleted+=new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted);
webBrowser1.Navigate("http://192.168.126.131/dvwa/login.php");
}
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
webBrowser1.Document.GetElementById("username").InnerText = "admin";
webBrowser1.Document.GetElementById("password").InnerText = "password";
webBrowser1.Document.GetElementById("Login").InvokeMember("click");

webBrowser1.Navigate("http://192.168.126.131/dvwa/vulnerabilities/sqli/");
MessageBox.Show(webBrowser1.Url.ToString());

}



程序如上, MessageBox.Show(webBrowser1.Url.ToString());的输出值应该会是:http://192.168.126.131/dvwa/vulnerabilities/sqli/
但是却是最开始未跳转的URL:"http://192.168.126.131/dvwa/login.php
求解释。。。。 webbroswer
[解决办法]
Navigate 调用后,大概还没有刷新页面,建议在 webBrowser1_DocumentCompleted 中判断是哪个页面加载完成,然后执行不同的动作
[解决办法]
还没搞定? 很明显的webbrowser页面导航之后, documentcompleted事件并没有开始执行,你就取得了url,当然是之前的了。
前加判断e.url.AbsoluteUri =XXXXX 然后再获取

读书人网 >C#

热点推荐