Можно. Когда пользователь фокусируется на этом входе (вы можете наблюдать это с событиями focus
и blur
). Когда пользователь фокусируется на этом вводе, прослушайте нажатие клавиши с событием keypress
, и вы сможете получить значение последней нажатой буквы и, предположив, что это не клавиша удаления, закодировать ее правильно.
Некоторый псевдокод с jQuery, который обрабатывает изменение последнего символа. Может быть не совсем верно:
var listenForKeyPress = function (e) {
if ($.inArray(e.keyCode, ARRAY_OF_CHARS_TO_ENCODE)) {
var el = $(this),
value = el.val();
// Set the value after we encode it
el.val(value.slice(0, value.length - 2) + encode(value[value.length - 1]);
}
};
$('#my-input').focus(function () {
$(this).bind('keypress', listenForKeyPress);
});
$('#my-input').blur(function () {
$(this).unbind('keypress', listenForKeyPress);
});