7

ノート:

以下の回答は、2009 年の従来のブラウザーの状態を反映しています。2017 年には、JavaScript を使用してファイル入力要素の値を実際に動的/プログラム的に設定できるようになりました。

詳細とデモについては、この質問の回答を参照してください:
How to set file input value programatically (ie: when drag-dropping files)?

ファイルをアップロード(参照)せずに、ボタンをクリックして値を設定したいのですが、fileuploaderそれは可能ですか、それとも間違った方法ですか?
サンプルhtml:

<input type="file" id="files" />
<input type="button" id="btnTest" value="Test"/>

そしてjquery:

 $("#btnTest").click(function() {
      alert('test');
     //$('#files').html('pp.img');
     //$('#files').val('pp.img');
     $('#files').text('pp.img')
});

しかし、それは私にはうまくいきません。

4

3 に答える 3

8

出来ますか?

いいえ

JavaScript を介してこれを行うことができた場合、ユーザーのコンピューター上の任意のファイルを指定できるため、ファイル入力要素の値を設定することが許可されていないため、重大なセキュリティ上の欠陥になります。

于 2012-08-30T04:42:09.750 に答える
5

これを行うためのクロスブラウザの方法はないと言わざるを得ません。「ファイルが選択されていません」というテキストは、ウィジェットの実装定義部分にあり、完全にブラウザー固有です。必要に応じて、value 属性が空の場合、CSS を使用してテキストを何かで覆うことができます。

于 2012-08-30T04:43:14.567 に答える
3

値を設定することはまったく許可されていないと思います。C:\passwords.txt可能であれば、そこに入力して値を自動的に送信できるからです。あまり安全ではありません。

于 2012-08-30T04:41:59.487 に答える