2013-03-29 20 views
5

これは私のアップロード入力であり、表示しようとするものがPowerpoint PPSの表示ファイルを拒否しても問題ありません。入力タイプのファイルがPPSファイルを表示しないaccept

それは行動がすべてのブラウザで同じである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/

私は、そのファイルの拡張子フィルタリングが、私はこれが原因W3CとWHATWGによって定義された動作との違いであると想像のFirefox 19で動作していないように注意してください。

(1995年!)acceptの元言及ややあいまいです:

はのリストであるINPUTタグのためのACCEPT属性を許可しますメディア 入力に使用できる型または型のパターン。

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

私の答えを更新しました。確認できますか? –

関連する問題