我必须打电话给第三方CRM系统。他们的javascript代码存在一些问题,但网页在IE9中正常运行。
如果我将ScriptErrorsSuppressed设置为false,我将收到错误消息 - "此页面上的此脚本出现错误"在底部 - "你想继续在这个页面上运行脚本吗?"
如果我点击"是"网页将正常工作,"否"另一方面,不会将jquery正确绑定到对象。
如果我将ScriptErrorsSuppressed设置为true,则不会显示错误消息,但这将停止执行脚本,并且网页将无法正常工作。
IE9可以显示脚本错误,但继续执行脚本。有没有办法模仿相同的行为?
谢谢 -Maigais
答案 0 :(得分:-1)
我们有几乎相似的任务。我尝试了包括WebBrowser.ScriptErrorsSuppressed = true
在内的所有内容。这不是我想要的,因为所有JavaScripts在出现异常后停止工作。
但下一个对我有用:
public PageWithWebBrowser()
{
WebBrowser.DocumentCompleted += OnWebBrowserDocumentCompleted;
WebBrowser.Navigate("http://www.example.com");
}
private void OnWebBrowserDocumentCompleted(object sender, System.Windows.Forms.WebBrowserDocumentCompletedEventArgs e)
{
WebBrowser.Document.Window.Error += OnWebBrowserDocumentWindowError;
}
private void OnWebBrowserDocumentWindowError(object sender, System.Windows.Forms.HtmlElementErrorEventArgs e)
{
//Suppresses a dialog and continues running scripts on the page
e.Handled = true;
}
正如您所看到的,我使用System.Windows.Forms.WebBrowser
控件,可能会使用WPF WebBrowser控件。
希望这会有所帮助。