如何使用Javascript从字符串中删除HTML ASCII代码

时间:2010-12-23 23:09:00

标签: javascript html ascii

我有一个字符串,当用户将数据输入文本框时,我正在动态构建,我正在输入正在输入的输入并将其保存到全局变量,如下所示:

e.g。

var uid = '';

function buildString(e) {  
    var keynum = e.keyCode ? e.keyCode : e.which; 
    uid += String.fromCharCode(keynum);  
}

我注意到该字符串在每个键入的字符前面附加了HTML ASCII码。

e.g。

  

091 [041)062> 030RS04800546029GS

所以

091 = [

041 =)

062 =>

048 = 0

我不希望这些代码出现在字符串中,是否有正则表达式或Javascript中的其他方法,只删除代码而不删除输入的实际有效数字?

1 个答案:

答案 0 :(得分:0)

听起来你并没有将最好的事件用于你想要做的事情。您的代码应该主要适用于keypress事件(example),但对keyupkeydown的效果不佳。

但是只听keypress不会让你建立一串按键的字符串。例如,使用上面的例子,如果我输入“abcd”然后右箭头两次然后输入“xx”,则组合字符串将是“abcdxx”,其中在文本框中显示的是“abxxcd”。因此需要更复杂。

这里有龙。为了更好地了解围绕JavaScript键盘事件的疯狂情况,this site提供了很多信息。