У меня есть сфокусированный TextBox, и пользователь будет использовать устройство чтения штрих-кода, чтобы заполнить его дешифрованными данными. Как я могу вызвать функцию сразу после того, как текст появится в TextBox, не потеряв вначале его фокус?JQuery - событие по тексту, заполненное считывателем штрих-кода
ответ
Missing некоторые детали, но здесь это:
По your comment, я думаю, что устройство имитирует ввод при чтении кода и вставить в текстовое поле. Вы можете поймать, что с помощью keyup
, change
и keydown
:
$('.txt').on('keyup keydown change',function(){
//code to run
}
Если метод не работает, то я не могу думать ни о чем другом. Если он просто вставляет текст, тогда он должен запускать хотя бы одно из событий.
В ответ на your second comment:
Если значение изменяется с помощью JavaScript, то вы должны использовать эту функцию, которая изменяет значение для запуска кода обработки изменений, или связать оба подхода к тому же функция, как:
function iChangeTheValue(){
$('.txt').val('0231231212321');
changedText();
}
$('.txt').on('keyup keydown change',function(){
changedText();
}
function changedText(){
//code
}
О автозаполнения части: Вы можете отключить его, если он нарушает код с помощью атрибута HTML autocomplete="off"
. В противном случае, пожалуйста, прочитайте this.
Если вы, например, измените значение текстового поля с помощью Javascript, скажем ' $ ('.txt'). val ("123"); 'или заполнить вы выбираете одно из значений, которое предлагает автозаполнение браузера, так или иначе, я могу поймать событие этого изменения? Я ищу что-то общее. «ontextchanging», но не обязательно с клавиатуры. – enb081
@ enb081 См. мое редактирование. – SeinopSys
Заполняется ли он с помощью '.val()' или код чтения кода "типа" в текстовом поле? Кроме того, [что вы пробовали] (http://whathaveyoutried.com/)? – SeinopSys
@ DJDavid98 Я понятия не имею, как это работает, но текст появляется везде, где находится курсор. – enb081
Это может быть симуляция нажатий клавиш. Попробуйте '.keyup()' –