如何使用jQuery验证将光标放在输入字段的末尾?

时间:2011-06-24 10:10:38

标签: jquery validation input cursor

我试图在验证后将光标放在输入字段的末尾。这样可以正常工作,除非你键入太多字母(超过输入框的默认长度),最后的字母不显示,因为输入的值在清理后被重写。

如何修改此代码以将光标放在输入字段的末尾?

在html中:

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

在jQuery中:

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

1 个答案:

答案 0 :(得分:0)

不要在keyup事件中进行验证,而是尝试使用keydown事件,因为当事件被触发时,字符尚未添加到输入字段中。

你可以这样做......

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