我有一個簡單的MVC網頁,彈出一個對話框,其中包含超鏈接到文件的列表。它們正確地以「file://」作爲前綴,如果將這些鏈接複製到剪貼板並粘貼到瀏覽器窗口中,鏈接將正常工作。但是,從對話內,單擊鏈接的文件將返回...沒有任何內容。爲什麼我不能點擊鏈接從MVC網頁打開文件
什麼也沒有發生。 Firefox,Internet Explorer和Chrome中的行爲完全相同。沒有任何警告,錯誤等
視覺上我的對話是這樣的:
如果我的鏈接的一個「檢查元素」,例如,前一個「JavaScript的筆記。 TXT」,它看起來像這樣:
這是一個有效的超鏈接。如上所述,我可以將鏈接複製到瀏覽器的地址欄中,並且鏈接的文件可以正常打開。我還可以將元素的完整HTML複製到記事本中,包裝在標籤中並保存爲.html文件,並且鏈接工作得很好。這些鏈接在任何瀏覽器中都不起作用。
我在當前顯示Kendo網格中的鏈接。思考這可能是一個問題,我暫時擺脫了網格,並試圖用純HTML顯示它們。同樣的問題 - 點擊鏈接根本沒有結果。
我在這裏打擊更深的東西嗎?就像,我正在使用jquery對話框來顯示列表。 jQuery對話做些什麼來阻止超鏈接工作?
TIA任何幫助。
聽起來像JavaScript的一個錯誤的位實際上是攔截和阻止鏈接點擊。它可能與它在網格內的事實有關。不確定。但JavaScript是唯一解釋這個問題的東西。尋找單擊事件處理程序,尤其是在可能有類似'preventDefault()'的地方。 –
由於安全原因,瀏覽器在默認情況下不允許指向'file:// ...'的鏈接(除非原來的服務頁面本身來自'file://'。要解決這個問題,可以使用' - 允許從文件訪問文件(其他瀏覽器將有其他命令行參數),或者使用MVC和常規的'http:// ...'超鏈接提供文件 – Amy
欲瞭解更多信息,請參閱[Firefox ](http://kb.mozillazine.org/Firefox_:_Issues_:_Links_to_Local_Pages_Don%27t_Work),[Chrome](https://stackoverflow.com/questions/2087894/can-google-chrome-open-local-links), [IE](https://superuser.com/questions/149068/how-to-add-a-local-file-to-trusted-zone-in-ie8) – Amy