1. ホーム
  2. ジャバスクリプト

[解決済み】<input type='file'> の変更時に選択されたファイルのフルパスを取得するには、javascript、jquery-ajaxを使用するにはどうすればよいですか?

2022-03-29 14:49:55

質問

を使用してファイルを選択する際に、ファイルのフルパスを取得する方法。 <input type=‘file’>

<input type="file" id="fileUpload">
<script type="text/javascript">
function getFilePath(){
     $('input[type=file]').change(function () {
         var filePath=$('#fileUpload').val(); 
     });
}
</script>

が、filePath 変数には only name ではなく、選択されたファイルの full path .

ネットで検索してみましたが、セキュリティ上の理由でブラウザ(FF,chrome)はファイル名を出すだけのようです。

選択したファイルのフルパスを取得する他の方法はないのでしょうか?

解決方法は?

セキュリティ上の理由から、ブラウザはこれを許可していません。つまり、ブラウザの JavaScript はファイルシステムにアクセスできませんが、HTML5 File API を使用すると、Firefox だけは mozFullPath プロパティがありますが、その値を取得しようとすると空文字列が返されます。

$('input[type=file]').change(function () {
    console.log(this.files[0].mozFullPath);
});

https://jsfiddle.net/SCK5A/

だから、時間を無駄にしないでください。

edit: ファイルを読み込む際にファイルのパスが必要な場合は ファイルリーダー APIで代用できます。SOの関連質問はこちらです。 画像をアップロードする前にプレビューする。