如何从密钥代码中获取字符串/字符值;

时间:2012-09-04 07:46:40

标签: javascript html keyboard

我正在使用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)的值为空;不是空白。
对此有何解决方法?

2 个答案:

答案 0 :(得分:7)

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

// e.g.
String.fromCharCode(event.charCode != null ? event.charCode : event.keyCode);

答案 1 :(得分:1)

您可以尝试:

String.fromCharCode(event.which); // it works in all major browsers