2012-10-11 47 views
5

我有一個問題: href="file://" 嗯,我想點一個鏈接在HTML到文件,在瀏覽器中,如果我寫這樣HREF =「文件://」不工作

file:///K:/filename.pdf 

它作品打開一個文件,但如果我指向它:

 href="http://file:///K:/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf" 

它不起作用。鏈接更改爲:

file///K:/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf 

colon文件消失後。有什麼建議可以做什麼?

+4

你在做什麼,點g'href =「http:// file:/// K:/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf」'?這是無效的! –

+0

建議?鏈接您的文件相對於您的網頁。 ''並將文件存儲到'files /'文件夾中。例如 – Touki

+0

'http'是一個指向Web資源的協議,同樣是'file'指向一個本地資源 - 你不能在href中使用它們。 – Christoph

回答

8

您的網址被改寫爲file///K:/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf的原因是因爲你指定http://file://

http://開頭是正在使用的協議,並且您的瀏覽器正在刪除第二個冒號(:),因爲它是無效的。

注意

如果您鏈接到類似

<a href="file:///K:/yourfile.pdf">yourfile.pdf</a> 

上面描述了一個鏈接到第k稱爲k:/yourfile.pdf文件:駕駛機器上,你正在查看URL。

你可以做到這一點,例如下面創建一個指向C:\temp\test.pdf

<a href="file:///C:/Temp/test.pdf">test.pdf</a> 

通過指定文件://你表示這是一個當地的資源。此資源不在互聯網上。

大多數人沒有K:/驅動器。

但是,如果這是你正在努力實現的,那很好,但這不是一個網頁上的「典型」鏈接的工作原理,除非每個人都要訪問您的鏈接可以訪問(相同的?)K:/驅動器(這可能是共享網絡驅動器的情況)。

你可以嘗試

<a href="file:///K:/AmberCRO-SOP/2011-07-05/SOP-SOP-3.0.pdf">test.pdf</a> 
<a href="AmberCRO-SOP/2011-07-05/SOP-SOP-3.0.pdf">test.pdf</a> 
<a href="2011-07-05/SOP-SOP-3.0.pdf">test.pdf</a> 

注意http://file:///K:/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf是畸形的

0

%20是AmberCRO SOP之間的空間。

嘗試 -

href="http://file:///K:/AmberCRO SOP/2011-07-05/SOP-SOP-3.0.pdf" 

或重命名文件夾AmberCRO-SOP並把它寫成 -

href="http://file:///K:/AmberCRO-SOP/2011-07-05/SOP-SOP-3.0.pdf" 
+6

'http:// file://'? – Touki

+0

@Touki我猜FireFox會在你的硬盤上打開本地文件時添加file:/// – Dipak

0

分享您的 「每個人」 或某個特定組的文件夾,並嘗試這個辦法:

<a href="file://YOURSERVERNAME/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf"> Download PDF </a>

+0

技術上它應該是'file:///// YOURSERVERNAME'。 'file://'是協議位,'/'是根目錄,'// YOURSERVERNAME'是服務器的網絡地址 - 事情 - 我不能記住這個名字-的。 – wizzwizz4