2013-03-29 106 views
5

這是我的上傳輸入,無論我嘗試什麼,都拒絕顯示Powerpoint PPS文件。輸入類型文件接受不顯示PPS文件

它顯示PDF,PPT,PPTX,PPSX但不是PPS

<input type="file" 
    accept="application/pdf,application/vnd.ms-powerpoint,application/vnd.openxmlformats-officedocument.presentationml.slideshow,application/vnd.openxmlformats-officedocument.presentationml.presentation" 
name="upldInput"/> 

的行爲是在所有瀏覽器一樣,無人問津PPS文件。

+0

仍在尋找解決方案 – user1615362

+0

我更新了我的答案和更多信息。如果缺少FF支持是一種破壞行爲,請隨時取消「接受」檢查並查看是否有人有更好的答案。 –

回答

3

我找不到可用的MIME類型。但是,下面的確實工作:

<input type="file" accept="application/pdf,.pps" name="upldInput"/>

顯然,你可以mix and match文件擴展名和MIME類型。在Chrome 25和IE 10(PC)上,這會產生所需的行爲,即只顯示匹配的MIME類型擴展名。

演示:http://jsfiddle.net/GGFVv/

我也試過混合多種擴展和多種MIME類型,這也似乎工作。

<input type="file" 
    accept=".pps, 
    .jpg, 
    .txt, 
    application/pdf, 
    application/vnd.ms-powerpoint, 
    application/vnd.openxmlformats-officedocument.presentationml.slideshow, 
    application/vnd.openxmlformats-officedocument.presentationml.presentation" name="upldInput"/> 

演示:http://jsfiddle.net/GGFVv/2/

我應該注意的文件擴展名篩選似乎並不在Firefox 19的工作我想這是因爲由W3C和WHATWG定義的行爲之間的區別。

accept(!1995年)原一提的是有些含糊:

允許一個接受輸入的標籤,這是一個列表屬性媒體 允許輸入的類型或類型模式。

當Firefox找到一個它無法識別的值時,它似乎默認爲「所有文件」,所以這在用戶界面上有些不太理想。

2

編輯:您是否嘗試簡單地添加:accept=".pps"

<input type="file" 
    accept="application/pdf, 
     application/vnd.ms-powerpoint, 
     application/vnd.openxmlformats-officedocument.presentationml.slideshow, 
     application/vnd.openxmlformats-officedocument.presentationml.presentation, 
     .pps" 
    name="upldInput"/> 
+0

對不起,但它不起作用。嘗試一下。 – user1615362

+0

我已經更新了我的答案,可以檢查嗎? –

相關問題