String.fromCharCode(e.which)没有'我认不出点和逗号
String.fromCharCode(e.which) doesn't recognize dot and comma
我用jQuery:为输入掩码创建了一个函数
$.fn.mask = function(regex) {
this.on("keydown keyup", function(e) {
if (regex.test(String.fromCharCode(e.which))) {
return false;
}
});
}
它根据您传递的正则表达式拒绝任何输入。示例:
$("#textfield").mask(/'s/); // denies white spaces
$("#textfield").mask(/'D/); // denies anything but numbers
上面的例子是有效的,但我尝试使用正则表达式来接受带有小数分隔符的数字,比如:
$("#textfield").mask(/[^'d.,]/); // Anything except digits, dot and comma
这行不通。但如果我在按下.
或,
时在控制台上记录String.fromCharCode(e.which)
,它会显示这些(相应的)字符:¾
和¼
。
问题是为什么String.fromCharCode(e.which)
代表那些字符而不是压缩字符?
您想要处理键盘产生的实际字符,而不是键的布局位置。
$.fn.mask = function(regex) {
this.on("keypress", function(e) {
if (regex.test(String.fromCharCode(e.which))) {
return false;
}
});
}
keypress
事件报告生成的字符的代码点。
http://jsfiddle.net/USgNJ/
相关文章:
- 如何通过点击机身上的任何位置来关闭弹出的DIV
- 推特引导:弹出窗口不会在第一次点击时出现,但会在第二次点击时显示
- 在highcharts.js中向点弹出窗口动态添加文本
- 隐藏uib弹出按钮点击不工作
- 如何使用AngularJS在点击身体内部任何位置时显示弹出窗口
- 点击启动弹出事件未显示
- 如何在Ol3弹出窗口中添加用javascript创建的按钮上的点击事件
- 按钮点击未在弹出窗体中触发
- 信息窗口谷歌地图点击事件给出错误
- 如何在标题上创建弹出框,当点击关闭按钮时,不使用jquery或php在网站中显示
- 使输入文本的背景图像在点击“”时滑出视野;输入“”;
- Mapbox:打开一个标记's在地图外点击弹出
- String.fromCharCode(e.which)没有'我认不出点和逗号
- jQuery移动弹出点击一个li元素
- 如何找出点击事件在画布,动态js
- 弹出点击事件不工作
- 什么是Java脚本代码打开弹出点击网格单元格值
- 在一个新的选项卡中打开一个url,而不是一个弹出(点击后)
- 对话框小部件-如何弹出点击图像
- 我怎样才能找出点击事件被捕获的地方