У меня есть следующий код:Длина не возвращает правильное значение
$(document).ready(function (e) {
$('#input').keydown(function (e)
{
var inpData_lenght = $(this).val().length+1;
var max_length = 15;
if (inpData_lenght >= max_length)
{
if (inpData_lenght > max_length)
{
if ((e.keyCode != 8) && (e.keyCode != 46))
{
e.stopImmediatePropagation();
e.preventDefault();
}
}
$(this).css({'background-color': '#ff8080'});
}
else
{
$(this).css('background-color', '');
}
});
});
HTML:
<textarea id="input"></textarea>
текстовое поле не меняет фон обратно на белый, когда есть max_length-1
символов, но только на max_length-3
, есть ли обходной путь? Я знаю, что это связано с обратным пространством или удалением, которое считается символом.
EDIT: Я могу использовать только keydown, потому что это единственный связанный с ключом обратный вызов, поддерживаемый плагином.
Затем с помощью другого плагина я рекомендовать. Что вы используете? – Bergi
Обратите внимание, что backspace и delete - это не единственные ключи, которые вам нужно особо учитывать: как насчет вкладки (с или без сдвига)? Как насчет клавиш со стрелками? _ "... плагин ..." _ - Какой плагин? Я не вижу никакого кода плагина в вопросе. – nnnnnn