如何在c#webbrowser控件中禁用Alert box javascript?

时间:2009-12-23 09:54:22

标签: c# webbrowser-control

当我使用WebBrower控件浏览某个网站时,它会从java脚本页面显示警告框,如何禁用它?

2 个答案:

答案 0 :(得分:3)

您可以使用以下代码:

        HtmlElement head = myWebBrowser.Document.GetElementsByTagName("head")[0];
        HtmlElement scriptEl = myWebBrowser.Document.CreateElement("script");
        IHTMLScriptElement element = (IHTMLScriptElement)scriptEl.DomElement;
        string alertBlocker = @"window.alert = function () { };";
        element.text = alertBlocker;
        head.AppendChild(scriptEl);
        myWebBrowser.ScriptErrorsSuppressed = true;

来源取自: http://moshez.blogspot.co.il/2013/08/c-disable-alert-box-javascript-in-c.html

答案 1 :(得分:2)

我不确定是否可能,但是如果你能够在获得这些页面后向控件注入一些代码,你可以覆盖window.alert函数,例如:

<script>function window.alert(){ return false; }</script>
<script>

    alert("hi there")  // won't show up

</script>