2012-08-07 12 views
5

入力タイプ= "フィールド"フィールドがユーザーに利用可能かどうかを確認する最良の方法は何ですか?ユーザーがファイルをアップロードできるかどうかを確認する最善の方法は何ですか?

少なくともiPhoneとiPadはファイルをアップロードすることはできませんが、バックエンドコードを使用してユーザーエージェントをチェックするのではなく、最も単純な解決策だと思っていますか?

目的は、ファイルのアップロードが利用可能かどうかを確認することです。そうでない場合は、display:noneを設定します。フォームを含むdiv全体に対して。

これはCSSでのみ行うことができますか? jQuery?

私は明白に(iOS)をチェックしていないが、より一般的なチェックをしている解決策を好むだろう。

ありがとうございます!

+0

オペラミニアクセスをディスクに与えないと、ファイルアップロード入力フィールドも自動的にテキストタイプに変換されます。私は解決策も知りたい。 – Prasanth

答えて

12

今日のようにこれを処理するための最もエレガントな方法は、おそらくその最新バージョンでは次のJS文でファイル入力をサポートするためにテストすることができますどのModernizrを使用している:

if(Modernizr.fileinput) { 
    //file input available! 
} else { 
    //No file input :(
} 

代わりにあなたがいない場合this SO answerで説明したように

var elem = document.createElement('input'); 
elem.type = 'file'; 
return !elem.disabled; 

:コードのみの3行が含まれ、それをテストする簡単な方法があるプロジェクトにModernizrを含めたいです。

+1

素晴らしいですが、1つの関数に対して完全なライブラリをロードするには少し重いと感じます。 – jonas

+0

@jonasが更新されました:) – Mahn

+1

[Modernizrのドキュメントにあります。](http://miketaylr.com/code/input-type-attr.html) – Prasanth

関連する問題