Saya perlu menampilkan nama file yang sedang dipilih (dalam elemen <input type="file">
).
Semuanya baik-baik saja, satu-satunya masalah adalah saya mendapatkan string seperti ini "C:\fakepath \typog_rules.pdf" (browset secara otomatis menempatkan ini sebagai nilai untuk elemen input).
Ketika saya mencoba untuk membagi string dengan '\'
atau '\\'
, gagal karena garis miring yang tidak terkecuali. Upaya untuk mencocokkan/mengganti garis miring juga gagal. Apakah ada cara untuk mengatasi hal ini? Saya membutuhkan ini untuk bekerja setidaknya di Opera dan IE (karena di browser lain saya dapat menggunakan FileReader)
E.G. Saya mendapatkan "C:\fakepath\typog_rules.pdf" sebagai input dan ingin mendapatkan "typog_rules.pdf" sebagai output.
Untuk alasan keamanan, tidak mungkin untuk mendapatkan jalur lengkap yang sebenarnya dari sebuah file, yang dirujuk melalui elemen &<input type="file" />
.
Pertanyaan ini sudah menyebutkan, dan menautkan ke pertanyaan-pertanyaan Stack Overflow lainnya mengenai topik ini.
string = string.split("\\");
Dalam JavaScript, backslash digunakan untuk menghindari karakter khusus, seperti baris baru (\n
). Jika Anda ingin menggunakan backslash literal, backslash ganda harus digunakan.
Jadi, jika Anda ingin mencocokkan dua backslash, empat backslash harus digunakan. Sebagai contoh, alert("\\\\")
akan menampilkan dialog yang mengandung dua garis miring.