Я пытаюсь охватить jQuery 100% простым и элегантным API, но я столкнулся с несогласованностью между API и прямым HTML, который я не могу понять.
У меня есть загружаемый файл AJAX script (который работает правильно), который я хочу запускать каждый раз при изменении значения входного файла. Здесь мой рабочий код:
<input type="file" size="45" name="imageFile" id="imageFile" onchange="uploadFile()">
Когда я преобразовываю событие onchange
в реализацию jQuery:
$('#imageFile').change(function(){ uploadFile(); });
результат не тот. С атрибутом onchange
функция uploadFile()
вызывается в любое время, когда значение изменяется, как ожидается. Но с обработчиком событий jQuery API .change()
событие только срабатывает при первом изменении значения. Любое изменение значения после этого игнорируется. Это кажется мне неправильным, но, конечно, это не может быть недосмотр jQuery, верно?
Кто-нибудь еще сталкивался с той же проблемой и у вас есть обходное решение или решение проблемы, отличное от того, что я описал выше?