Поставлена задача:
При изменении файла в input file делать какие-либо действия, здесь отлично срабатывает on('change')
Вызывать эти события нужно постоянно, даже если файл не был измененён
Код написан такой:
$(function(){
$('[for=file]').on('click',function(){
$('#file').val('');
$('#file').on('change',function(){
if($(this).val() != ''){
alert($(this).val());
$(this).blur();
}
});
});
});
Проблема в том, что события срабатывают n+1 раз, то есть первый раз хорошо, во второй раз вызвано будет два алерта, как решить данный вопрос?
$(function(){
$('[for=file]').on('click',function(){
$('#file').val('');
var a = 0;
$('#file').on('change',function(){
if(a < 1){
if($(this).val() != ''){
alert($(this).val());
$(this).blur();
}
}
a++;
});
});
});
Но этот костыль мне не нравится, может кто знает решение?