2012-02-03 16 views
1

我的網頁應用程序允許導出各種格式的數據。通過從下拉列表中選擇導出格式(<select>)觸發導出,導致表單被髮送並且文件以請求的導出格式返回並下載。避免IE中文件下載阻止程序的合法技術(「幫助保護您的安全」)?

在IE以外的所有瀏覽器上工作正常 - 在IE上顯示「幫助保護您的安全」攔截器,然後單擊「單擊此處以查看選項」,導致頁面重新加載而不允許實際下載。

簡而言之,IE用戶不能下載文件,因爲阻止程序和後續的重新加載而不是下載。

我知道我們可以要求用戶更改他們的安全區域設置以啓用下載,但由於各種原因,這是不實際的 - 在許多不同的環境中有很多用戶,他們往往忽略指令。

是什麼導致阻塞器出現的規則記錄在某處?在IE中允許文件下載的合法,推薦的方式是什麼?也就是說,對於下面詳細描述的場景,我如何設置HTML /表單以真正讓用戶下載文件?

  • (使用顯示用戶的文件格式的列表
  • 一旦用戶選擇了一個文件,將其下載到自己的計算機,而不觸發IE的下載攔截

回答

1

有你<select>塊簡單地注入JavaScript)<a href="url_to_actual_format"> click here to download </a>文本在DOM樹中的其他地方。然後,用戶點擊標準鏈接並重新加載整個頁面,直接下載文件。

你甚至可以有<a href="url?format=blah"> click </a>導致GET請求..

+0

由於量子點,看起來像我可能要檢測IE和替代發佈顯示用戶直接鏈接的形式來點擊。將嘗試並更新。 – Parand 2012-02-03 18:01:12

+0

我見過網站換出選擇器直接鏈接與JavaScript ..看起來相當不錯。 – qdot 2012-02-03 18:51:37

相關問題