Как поместить курсор в конец поля ввода с проверкой jQuery? - PullRequest
1 голос
/ 24 июня 2011

Я пытаюсь поместить курсор в конец поля ввода после проверки. Это работает нормально, за исключением того, что вы набираете слишком много букв (больше длины поля ввода по умолчанию), последние буквы не отображаются, потому что значение ввода перезаписывается после очистки.

Как я могу изменить этот код, чтобы поместить курсор в конец поля ввода?

В html:

<input type="text" id="myInput">

В jQuery:

$("#myInput").keyup(
   function(){
      this.value = this.value.replace(/[^a-z]/gi,''); // only letters
   }
);

1 Ответ

0 голосов
/ 24 июня 2011

Вместо проверки в событии keyup попробуйте использовать событие keydown, поскольку символ еще не добавляется в поле ввода при возникновении события.

Вы можете сделать что-то подобное...

$elem.keydown(function (e) {
    if (isDisallowed(e.which)) {
        e.preventDefault();
        $('#errorMsg').text('That key is not allowed').delay(2000).fadeOut();
    }
});
...