Cara mendapatkan path lengkap file saat memilih file menggunakan <input type=‘file’>
<input type="file" id="fileUpload">
<script type="text/javascript">
function getFilePath(){
$('input[type=file]').change(function () {
var filePath=$('#fileUpload').val();
});
}
</script>
tetapi filePath var berisi only name
file yang dipilih, bukan file full path
.
Saya mencarinya di internet, tetapi tampaknya karena alasan keamanan browser (FF, chrome) hanya memberikan nama file.
Apakah ada cara lain untuk mendapatkan path lengkap dari file yang dipilih?
javascript
jquery
file-upload
filepath
Yogesh Pingle
sumber
sumber
Jawaban:
Demi alasan keamanan, peramban tidak mengizinkan ini, yaitu JavaScript di peramban tidak memiliki akses ke Sistem File, namun menggunakan API File HTML5, hanya Firefox yang menyediakan
mozFullPath
properti, tetapi jika Anda mencoba untuk mendapatkan nilai, peramban mengembalikan string kosong:http://jsfiddle.net/SCK5A/
Jadi jangan buang waktu Anda.
sunting: Jika Anda memerlukan jalur file untuk membaca file, Anda dapat menggunakan API FileReader sebagai gantinya. Berikut adalah pertanyaan terkait pada SO: Pratinjau gambar sebelum diunggah.
sumber
Coba ini:
Ini akan memberi Anda jalan sementara bukan jalur yang akurat, Anda dapat menggunakan skrip ini jika Anda ingin menampilkan gambar yang dipilih seperti dalam contoh jsfiddle ini (Cobalah dengan memilih gambar serta file lain): -
JSFIDDLE
Ini kodenya: -
HTML: -
JS: -
Ini tidak persis apa yang Anda cari, tetapi mungkin dapat membantu Anda di suatu tempat.
sumber
Anda tidak dapat melakukannya - browser tidak akan mengizinkan ini karena masalah keamanan.
Dan lainnya
Anda melewatkan
);
ini di akhir fungsi perubahan acara.Juga jangan membuat fungsi untuk acara ganti saja gunakan saja seperti di bawah ini,
sumber
D
direktori tetapi nilainya datangC:\fakepath\test.xls
Kamu tidak bisa Keamanan menghentikan Anda karena mengetahui sesuatu tentang sistem pengarsipan komputer klien - bahkan mungkin tidak memilikinya! Itu bisa berupa MAC, PC, Tablet, atau kulkas berkemampuan internet - Anda tidak tahu, tidak bisa tahu dan tidak akan tahu. Dan membiarkan Anda memiliki jalur lengkap dapat memberi Anda beberapa informasi tentang klien - terutama jika itu adalah drive jaringan misalnya.
Sebenarnya Anda bisa mendapatkannya dalam kondisi tertentu, tetapi membutuhkan kontrol ActiveX, dan tidak akan berfungsi dalam 99,99% keadaan.
Anda tidak dapat menggunakannya untuk mengembalikan file ke lokasi semula (karena Anda sama sekali tidak memiliki kendali atas tempat unduhan disimpan, atau bahkan jika itu disimpan) sehingga dalam praktiknya toh tidak banyak gunanya bagi Anda.
sumber
Apakah maksud Anda ini?
sumber
Anda dapat menggunakan kode berikut untuk mendapatkan URL lokal yang berfungsi untuk file yang diunggah:
sumber
Satu catatan yang menarik: meskipun ini tidak tersedia di web, jika Anda menggunakan JS di Electron maka Anda bisa melakukan ini.
Menggunakan input file HTML5 standar, Anda akan menerima
path
properti tambahan pada file yang dipilih, yang berisi jalur file nyata.Dokumentasi lengkap di sini: https://github.com/electron/electron/blob/master/docs/api/file-object.md
sumber
Anda dapat, jika mengunggah seluruh folder adalah opsi untuk Anda
acara perubahan akan berisi:
sumber
Anda tidak boleh melakukannya ... dan saya pikir mencobanya di browser terbaru tidak berguna (dari apa yang saya tahu) ... semua browser terbaru di sisi lain, tidak akan mengizinkan ini ...
beberapa tautan lain yang bisa Anda lalui, untuk menemukan solusi seperti mendapatkan nilai serveride, tetapi tidak di sisi klien (javascript)
Path lengkap dari input file menggunakan jQuery
Cara mendapatkan path file dari form input HTML di Firefox 3
sumber
elemen file memiliki dan memanggil array
files
yang berisi semua hal yang diperlukan yang Anda butuhkansumber
Anda bisa mendapatkan path lengkap dari file yang dipilih untuk diunggah hanya oleh IE11 dan MS Edge.
sumber