gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-11-30 14:44:39 26 4
gpt4 key购买 nike

我正在编写一个聊天框。我输入的字符并没有按原样反射(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/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com