/ / javascriptを介して開くファイル入力をトリガーします-javascript、file-upload

javascript経由で開くファイル入力をトリガする - javascript、file-upload

だから私は次のような入力を持っています:

<input type="file" id="file" />

javascriptを介してファイルを開くダイアログをポップアップさせたい。私はこのようなことを試しました:

$("file").click();

(それは私が次のようなものを使用していると仮定していますプロトタイプ/ mootools / jquery)。ただし、これは何もしないようです。とにかく、ユーザーが入力を直接操作することを強制されることなく、ファイル入力のクリックイベントをトリガーできますか?

回答:

回答№1は4

私はそれがであるためにこれが不可能であることを思い出しますセキュリティ機能。実際、ファイルブラウジングダイアログのボタンはDOMにも表示されないことは間違いありません(フィールドは表示されますが、ブラウザが自動的にレンダリングするボタンは表示されません)。


回答№2の場合は3
$("file").click()

これは機能します(Chrome 8で)。表示するように設定されていないことを確認する必要があります:なし。

簡単な解決策は、絶対位置に配置してから、左を-1000pxのように設定することです。


回答№3の場合は3

私の知る限り、JavaScriptからファイルを開くダイアログを開くことはセキュリティ上の理由でブロックされています。


答え№4の2

IIRCブラウザでは、予防策としてこれを許可していません。スクリプトが何らかの方法でファイルを自動的にアップロードできないようにする必要があります。ファイルを開くダイアログをいじくり回すのもその1つです。

明らかに、これはいくつかの状況では悪いです...