当前位置:  开发笔记 > 前端 > 正文

jquery文本输入长度控制

如何解决《jquery文本输入长度控制》经验,为你挑选了1个好方法。

文本输入只允许三个单词用空格分隔,如果超过3,用户就不能再输入了,这是否可以使用jQuery?我可以使用keyup事件来监听,但是如何在不使用禁用的情况下阻止用户输入更多的令牌.这类似于html中输入文本的本机maxlength属性,除了在这种情况下maxLength是标记的数量.



1> Jataro..:

检查输入是否已有3个单词,并且他们正在尝试输入空格.如果是这样返回false:

$('#myTextbox').keydown(
    function(event)
    {
        var input = $(this).val();
        var numberOfWords = input.split(' ').length;
        if(numberOfWords == 3 && event.keyCode == 32)
        {
            return false;
        }
    }
);

编辑: 还有一个问题是有人可能会在该字段中通过文本.作为跨浏览器解决方案,我可能会将类似于@ karim79的代码绑定到blur事件.

$('#myTextbox').blur(
    function(e)
    {
        var tokens = $(this).val().split(' ');
        if(tokens.length > 3) 
        {
            $(this).val(tokens.slice(0,3).join(' '));
        }
    }
);

推荐阅读
pan2502851807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有