Katakanlah kita memiliki kode ini:
<form action='' method='POST' enctype='multipart/form-data'>
<input type='file' name='userFile'><br>
<input type='submit' name='upload_btn' value='upload'>
</form>
yang menghasilkan ini:
Ketika pengguna mengklik tombol 'Jelajahi ...', kotak dialog pencarian file terbuka:
Pengguna akan memilih file baik dengan mengklik dua kali file atau dengan mengklik tombol 'Buka'.
Apakah ada Peristiwa Javascript yang dapat saya gunakan untuk diberi tahu setelah file dipilih?
Jawaban:
Dengarkan acara perubahan.
input.onchange = function(e) { .. };
sumber
<input type="file" onchange="..." />
) meskipun ini tidak disarankan.Saat Anda harus memuat ulang file, Anda dapat menghapus nilai input. Lain kali Anda menambahkan file, acara 'on change' akan terpicu.
document.getElementById('my_input').value = null; // ^ that just erase the file path but do the trick
sumber
jQuery cara:
$('input[name=myInputName]').change(function(ev) { // your code });
sumber
Acara Ubah dipanggil meskipun Anda mengklik batal ..
sumber
Itulah cara saya melakukannya dengan JS murni:
var files = document.getElementById('filePoster'); var submit = document.getElementById('submitFiles'); var warning = document.getElementById('warning'); files.addEventListener("change", function () { if (files.files.length > 10) { submit.disabled = true; warning.classList += "warn" return; } submit.disabled = false; });
#warning { text-align: center; } #warning.warn { color: red; transform: scale(1.5); transition: 1s all; }
<section id="shortcode-5" class="shortcode-5 pb-50"> <p id="warning">Please do not upload more than 10 images at once.</p> <form class="imagePoster" enctype="multipart/form-data" action="/gallery/imagePoster" method="post"> <div class="input-group"> <input id="filePoster" type="file" class="form-control" name="photo" required="required" multiple="multiple" /> <button id="submitFiles" class="btn btn-primary" type="submit" name="button">Submit</button> </div> </form> </section>
sumber