2012-04-24 27 views
0

我有一個JS調用ActiveX來創建文件。JS中的「no button」

var object = new ActiveXObject("Scripting.FileSystemObject"); 
if (object != null) { 
    var file = object.CreateTextFile("C:\\" + str2 + ".csv", false); 
} 

這是彈出與YES/NO按鈕的Activex框。 YES按鈕工作正常,我的腳本被執行。

我的問題是沒有按鈕,它會返回一個IE警告:

自動化服務器不能創建對象。

有沒有辦法處理NO按鈕?

+0

除了是/否,盒子是什麼意思?你真的讀過它在問什麼嗎? – Domenic 2012-04-24 14:55:17

+1

我'與IE的法語版本的工作,快速的翻譯是:一個ActiveX控件是試圖在此頁上運行,你想激活它(是/否) – 2012-04-24 15:13:19

回答

2

這是一個重要的安全功能。任意JavaScript代碼無法訪問文件系統,因此要使用ActiveX。但是因爲這樣做是非常危險的,用戶需要被問到是否可以,這是你看到的彈出窗口。

如果用戶選擇「否」,這意味着他們不信任你的代碼。你必須接受這一點。

你可以嘗試添加類似「請點擊是當IE瀏覽器會警告你的ActiveX;!我保證我不會傷害你的計算機太多」但是,當然這取決於用戶是否會聽取您的意見。

+0

我不介意人們點擊NO按鈕。 的probleme是單擊時,IE會返回一個JavaScript錯誤,因爲我不知道如何處理「不」的答覆。 – 2012-04-24 18:54:00

+0

'try' /'catch'? – Domenic 2012-04-24 20:10:31