javascript - Jquery:fromcharcode() 将整数转换为字符的替代方法

标签 javascript jquery

我正在编写一个聊天框。我输入的字符并没有按原样反射(reflect)出来。

这基本上就是我正在使用的代码。

$(document).ready(function() {
    $(".entry").keydown(function(event) {
        console.log(String.fromCharCode(event.which));
    });
});

因此,当我键入(小写的)“a”时,控制台选项卡会显示“A”。

除非我为它创建单独的条件,否则特殊字符不会得到反射(reflect)。

有人可以帮我用一个不同的函数来完成这一切,并返回用户输入的字符串。或者采用不同的方法共同应对这一挑战。谢谢。

实际代码 - chat.js

var str='';

$(document).ready(function() {
    $(".entry").keydown(function(event) {
         console.log(event.which);
         if (event.which === 13 && event.shiftKey === false) {
             console.log(str);
             event.preventDefault();
         } else {
             var c = event.which;
             str = str.concat(String.fromCharCode(c));
         }
    });
});

所以基本上输入的每个字符都会连接到字符串中。然后 Enter 键会将文本转储到控制台。

最佳答案

似乎试图在 keydown 事件中获取 event.which 的值可能会导致您使用错误的 ascii 代码(您需要传递给 的内容String.fromCharCode).

See https://stackoverflow.com/a/10192144/3879872

不知道合不合你的需要,你可以试试:

$(document).ready(function(){
    $(".entry").keypress(function(event) {
        console.log(String.fromCharCode(event.which));
    }); 
});

(注意使用 keypress 而不是 keydown)

编辑:添加了工作演示

var str = '';

$(document).ready(function() {
  $(".entry").keypress(function(event) {
    console.log(event.which);
    if (event.which === 13 && event.shiftKey === false) {
      console.log(str);
      event.preventDefault();
    } else {
      var c = event.which;
      str = str.concat(String.fromCharCode(event.which));
    }
     console.log('Formated Text', str);
  });
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<textarea class="entry"></textarea>

关于javascript - Jquery:fromcharcode() 将整数转换为字符的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49143469/

相关文章:

javascript - 有人可以解释一下 javascript 算术表达式是如何工作的吗?

jQuery 验证引擎 : Trouble Creating a Custom Function

javascript - 检测键盘箭头键按下了多长时间?

javascript - JavaScript/jQuery 事件排序有问题吗?

javascript - 在新旧字符串中存储随机数

javascript - 带有单选按钮的 JSON 到 Html 表

javascript - 揭示模块模式java脚本无法访问变量

javascript - 为什么分配了错误的索引?

javascript - 响应中的“Access-Control-Allow-Credentials” header 为 '',必须为 'true'

javascript - jQuery Datepicker 未被执行