2009-10-22 50 views
0

使用web瀏覽器控件來巡覽站點。有時會出現涉及JavaScript彈出框的錯誤。我想在發生這種情況時做一些事情。在Web瀏覽器控件中捕獲JavaScript警報

  1. 知道當一個JavaScript警告彈出窗口了。

我已經使用了LostFocus事件,並取得了一些成功,但任何時候它都會失去焦點,代碼運行會很煩人。

  • 我想知道的是,警告框說,確切的文本。
  • 我不確定在哪裏可以找到警告框對象或將它投射到C#中使用。我看了整個互聯網,找不到它。

    任何一個線索?

    +0

    對您的問題有任何更新?我面臨同樣的問題。 – 2013-06-24 18:48:50

    回答

    0

    如果你正在尋找只出現陷阱腳本錯誤對話框,我會建議誘捕window.onerror DOM事件。如果爲此事件分配了處理程序,則會將消息,(腳本)文件名和行號作爲參數傳遞,這些都是彈出的錯誤對話框中顯示的所有內容。請注意,大多數用戶默認情況下都會關閉腳本錯誤對話框,因此如果預期用途適用於大量用戶,則明智的做法是尊重這一點。

    我不知道是否有一個更簡單的方法,我只與舊COM WebBrowser組件工作。

    +0

    任何想法如何將這與網頁瀏覽器,我不知道如何關聯這兩個。 – CaveManCode 2009-10-22 19:15:03

    +0

    不太清楚如何用C#做到這一點。看到這個知識庫文章:http://support.microsoft.com/kb/312777雖然你想使用窗口對象,而不是文檔對象(document.parentWindow) – 2009-10-22 19:22:15

    +0

    嘿安迪,我仍然在黑客攻擊它。感謝您的指導。 – CaveManCode 2009-10-22 20:25:33

    0

    只是這樣做:

    window.alert = function(txt) { 
        // Do something 
    } 
    

    這將讓你做你想要的警報文本的回調或其他任何東西。

    +0

    我不注入JavaScript。我根本不使用JavaScript。我只想捕獲使用webbrowser控件時發生的javascript警報。 – CaveManCode 2009-10-22 19:16:20

    相關問題