3

我正在使用 html 的输入标签,它应该类似于谷歌搜索的输入。

function onKeyPressFun(event){
    var inputObj = document.getElementById("tagInput");
    var strTags = inputObj.value + String.fromCharCode(event.keyCode);
    alert("post data: strTags" + strTags);
}

我想将数据发送到服务器以检测是否存在以该子字符串开头的任何标签。
我想将 keyPress 事件中的字符/字符串(此处适用)添加到文本中的现有输入中。
在上面的代码中,我使用了 String.fromCharCode。当我按“b”时,我发现 keyCode 0 并且 String.fromCharCode(event.keyCode) 的值什么都没有;既不是空白。
有什么解决办法吗?

4

2 回答 2

7

它可能与.keyCode跨不同浏览器对属性的支持有关。规范化 keyCode 值以获得更好的结果。一种方法(括号中的部分来自 jQuery 源):

// e.g.
String.fromCharCode(event.charCode != null ? event.charCode : event.keyCode);
于 2012-09-04T07:51:10.997 回答
1

你可以试试:

String.fromCharCode(event.which); // it works in all major browsers
于 2012-09-04T08:17:55.410 回答