Web浏览器控制阻止您确定要离开此页面吗?

时间:2016-08-25 13:28:34

标签: javascript c# vb.net webbrowser-control

我有一个应用程序,用于导航到另一个页面,一种Web浏览器,问题是某些网页上写着“你确定要离开这个页面吗?”对话框。我想完全删除它。它应该在没有这种对话的情况下开始导航。我试过这个,

WebBrowser.ScriptErrorsSuppressed = True

屏幕截图:http://image.prntscr.com/image/5d1adcbd60794f22b5ad7baf736b29f2.png

我也试过禁用javascript但没有运气。任何帮助,将不胜感激。

3 个答案:

答案 0 :(得分:4)

JavaScript here事件负责处理此类消息。将其设为null为:

window.onbeforeunload = null;

您可以阻止其处理程序代码运行。

答案 1 :(得分:1)

这将有效:

Dim doc As HtmlDocument = WebBrowser1.Document
Dim head As HtmlElement = doc.GetElementsByTagName("head")(0)
Dim s As HtmlElement = doc.CreateElement("script")
s.SetAttribute("text", "function cancelOut() { window.onbeforeunload = null; }")
head.AppendChild(s)
WebBrowser1.Document.InvokeScript("cancelOut")

答案 2 :(得分:0)

您需要使用可以找到here的不安全本机方法拦截新窗口事件