繁体   English   中英

按键+符号上的Javascript,如何检索它

[英]Javascript on keypress + sign, how do I retrieve it

按键+符号上的Javascript,如何检索它

目前,我的回车键有以下脚本

<script type="text/javascript">
$(document).ready(function() {
$(function(){

    $("input[type=text]").keyup(function(e){

        if(e.keyCode == "13")
        {
            var nextIndex = $(this).prop('tabindex') + 1;
            var selectedId = $(this).prop('id');
            var rowSplit = selectedId.split("_");
            var rowIn = rowSplit[1];

            if(selectedId.indexOf("big") > -1)
            {

            bigFunction(rowIn)

            $('[tabindex=' + nextIndex + ']').focus();
            }


    $("form :input").on("keypress", function(e) {
    return e.keyCode != 13;
    });


});
</script>

我希望它能工作,例如

我有一个最大长度为4的文本字段

我输入4个随机数字,例如1234,然后按字母+号,我想将焦点更改为下一个tabindex

我该怎么做,谢谢你的帮助!

我可能会这样做。 仅示例:

$('#element').keypress(function(){
  var v = $(this).val();
  if(v.charCodeAt(v.length-1) === 43){
    // + was pressed
  }
});

密钥代码是整数,您第二次正确编写了它。 但是第一个使用"13"

if(e.keyCode == 13)

可能会更好。 同样, +号代码是43(0x2B)。 在JavaScript中,您也可以使用'+'.charCodeAt(0)尽管这要长得多。

另外,当您按Enter键时,将触发默认按钮,除非您取消默认行为,如下所示:

    e.preventDefault();
    e.stopPropagation();

取消+的默认行为也将有助于避免在输入中出现+

要在您至少有4个字符(为数字)时触发自动选项卡功能,您需要检查输入框值的长度。 可能是这样的jQuery:

if($(this).val().length >= 4) ...

否则,尽管您的代码示例当前缺少右花括号( } ),但看起来好像您已经获得了大多数代码,因此我不太确定我可以按原样帮助修复代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM