jQuery 清除焦点上的输入文本

标签 jquery input focus

我有这个 jQuery 脚本:

$(document).ready(function() {
    $(':input:enabled:visible:first').focus();
    $('.letters').keyup( function() {
        var $this = $(this);
        if($this.val().length > 1)
            $this.val($this.val().substr(0, 1));
            $(this).next('input').focus();
        });
});

它将在页面加载时将焦点设置在第一个 input='text' 字段上。当用户输入字符时,它将把焦点移动到下一个输入字段。它还将限制每个字段中允许的字符数(当前为 1 个字符)。

我想知道是否可以清除焦点输入字段的当前值。当用户用光标单击以聚焦该字段时,以及当 $(this).next('input').focus(); 将焦点设置在下一个输入字段上时。

还可以验证字符仅允许字母字符吗?

最佳答案

要过滤输入,请使用

​$('input').on('keydown', function(e) {
    if( !/[a-z]|[A-Z]/.test( String.fromCharCode( e.which ) ) )
        return false;
});​​​​​​​​

要在点击焦点时清除输入字段,请使用

$('input').on('click focusin', function() {
    this.value = '';
});

请注意,当您单击当前形式的非聚焦输入控件时,此事件将触发两次。

演示:http://jsfiddle.net/xbeR2/

关于jQuery 清除焦点上的输入文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13978621/

相关文章:

javascript - 给两个文本框一个相同的值,一个使用 Javascript 或 jQuery 填充

jQuery 双动画焦点?

Jquery - 将焦点设置到窗口

javascript - 使用 jquery 在 dom 中移动嵌入式 youtube iframe 导致全屏无法在 Windows 8 IE 10 中工作

javascript - 如何在表过滤器中显示 "No Record Found"消息

javascript - Bootstrap 3 : Add a select list in button group

javascript - 在悬停时更改背景图像时防止浏览器闪烁

java - 难以正确读取 Java 控制台的输入

jquery - 如何获取表单中所有输入的值

android - 禁用焦点上的橙色轮廓突出显示