Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 防止用户使用JS/jQuery在输入中键入多个字符_Javascript_Jquery - Fatal编程技术网

Javascript 防止用户使用JS/jQuery在输入中键入多个字符

Javascript 防止用户使用JS/jQuery在输入中键入多个字符,javascript,jquery,Javascript,Jquery,我正在尝试编写一个函数,防止用户在输入中键入多个字符。基本上,每次用户点击任何键时,函数都会检查输入值的长度,如果大于1,则会将输入值设置为键入单词的第一个字符。这段代码行得通吗?如果不行,它应该是什么样子?(正如我在标题中提到的,我也在使用jQuery): 更新 这项提议是作为一份副本提出的。可能是这样的,因为: 当我在搜索栏中键入title(防止用户使用JS/jQuery在输入中键入多个字符)时,没有弹出结果,因为我提到了JavaScript和jQuery,而第一个问题根本没有提到 说到JS

我正在尝试编写一个函数,防止用户在输入中键入多个字符。基本上,每次用户点击任何键时,函数都会检查输入值的长度,如果大于1,则会将输入值设置为键入单词的第一个字符。这段代码行得通吗?如果不行,它应该是什么样子?(正如我在标题中提到的,我也在使用jQuery):

更新 这项提议是作为一份副本提出的。可能是这样的,因为:

  • 当我在搜索栏中键入title(防止用户使用JS/jQuery在输入中键入多个字符)时,没有弹出结果,因为我提到了JavaScript和jQuery,而第一个问题根本没有提到
  • 说到JS/jQuery,如果你比较标签,你会注意到,我使用了javascript和jQuery标签,而另一个问题有html、表单、输入、文本框,所以如果你在寻找关于javascript的帖子,你不会找到原始帖子
  • 最终,我坚持使用HTML解决方案,因为它根本不需要JS,而且比自己编写整个函数快得多。嗯,有一个答案,有人按照我最初的想法编写了函数,它也起了作用,但可能是因为选择了html解决方案,堆栈溢出思想,我刚才看到了前面提到的问题,因为上面提到的问题的作者考虑的最佳解决方案,与我的问题的最佳解决方案非常相似
  • 使用HTML是可选的,这取决于您,无论您是坚持使用纯JavaScript、像jQuery这样的库还是仅仅使用HTML。正如我所说,我使用HTML,因为它更快。但我也可以使用函数
  • 请尝试以下代码:

    $('.onealphaonly').bind('keyup',function(){
    const node=$(此);
    node.val(node.val().replace(/^([a-zA-Z]).*/g,$1');
    });
    
    
    
    尝试以下代码:

    $('.onealphaonly').bind('keyup',function(){
    const node=$(此);
    node.val(node.val().replace(/^([a-zA-Z]).*/g,$1');
    });
    
    那么
    maxlength


    那么
    maxlength



    好的,我来看看这个……你可以点击RunCodeSnippet按钮,它工作得很好,但我想@mbuechmann提供了更好的解决方案。不过还是谢谢你的帮助好的很酷。。再见,伙计,好吧,我来看看这个…你可以点击RunCodeSnippet按钮耶,它工作得很好,但我想@mbuechmann给出了更好的解决方案。不过还是谢谢你的帮助好的很酷。。你好,伙计,我记得,早些时候在一个webdev课程中(我从一月份开始,还没有完成),我做了一个练习,我必须使用它(在我了解JS之前),这是一个很好的解决方案。不过,当我使用特定的JS时,我必须使用JS,因为我需要maxlength属性(回顾我以前的文章,你就会知道,我在说什么)无缝Javascript!!@mbuechmann非常感谢你,你的代码正如我所期望的那样工作!嗯,我记得,早些时候在一个webdev课程中(我在一月份开始学习,还没有完成),我做了练习,在练习中我必须使用它(在我了解JS之前),这是一个很好的解决方案。不过,当我使用特定的JS时,我必须使用JS,因为我需要maxlength属性(回顾我以前的线程,你就会知道,我在说什么)无缝Javascript!!@mbuechmann非常感谢,您的代码如我所料工作!@VigneshRaja我已经解释了我的上述陈述。请阅读。问题中的更新,关于为什么问题不是重复的,似乎误解了我们要求这些更新的原因。它有点太过敌意(现已编辑),但它似乎也在说“可能是重复的,但这不是我的错,因为搜索系统太糟糕了”。我们感兴趣的是它是否是重复的(我们不在乎它是谁的错)
    )。如果它是重复的,不要担心——即使是有经验的程序员有时也找不到东西。我知道样板评论可能看起来像是对你或你的工作的攻击,但事实并非如此。因此,我建议,任何问题更新都要用温和而体贴的语气来写——像“仔细阅读我的问题”这样的东西很可能被理解为居高临下和高人一等。关于如何阅读问题的冗长说教通常也不会很好(你没有反对票是一个小奇迹)。。。为什么被接受的答案是带有html的?好的,谢谢你们以后的建议!我不想抱怨stackoverflow的搜索系统或其他。。。另外,@jonaswillms,您不必应用已接受的解决方案,也可以使用JS;)应用该解决方案是的,哈弗,我同意你们的看法,但即使程序员在互联网上找不到什么东西,他/她可能会使用不同的搜索查询,或者最终自己找到解决方案…@VigneshRaja我已经解释了我上面的说法。请阅读。问题中的更新,关于为什么问题不是重复的,似乎误解了我们要求这些更新的原因。它有点过于敌对(现在已被编辑掉),但它似乎说“这可能是重复的,但这不是我的错,因为搜索系统太糟糕了”。我们感兴趣的是它是否是重复的(我们不在乎它是谁的错)
    ;-)。如果它是重复的,不要担心——即使是有经验的程序员有时也找不到东西。我知道样板评论可能看起来像是对你或你的工作的攻击,但事实并非如此。因此,我建议,任何问题更新都要用温和而体贴的语气来写——像“仔细阅读我的问题”这样的东西很可能被理解为居高临下和高人一等。关于如何阅读问题的长篇说教不会让人厌烦
    function keepOneLetter(){
     $("input[type='text']").keypress(function(event){
        if($("input[type='text']").val().length > 1){
            $(input[type='text']).val() = $(input[type='text']).val($(this).val()[0])
        }
    }) }