javascript - jQuery 组合事件未定义
问题描述
我不希望用户在名称输入字段中输入数字或特殊字符,我使用以下代码实现了这一点:
jQuery(document).ready(function() {
jQuery(".txtOnly").keypress(function(e) {
var key = e.keyCode;
if(key < 97 || key > 122) {
e.preventDefault();
}
});
});
但是我想避免来自微软 IME 日文键盘的数字和特殊字符,尽管keypress
它不起作用,所以我使用的是一个 jQuery 组合事件,它正在工作但它总是返回undefined
,所以我无法获取键代码或这个值方法。
我的代码:
jQuery(document).ready(function() {
jQuery(".txtOnly").on('compositionupdate', function(e) {
var keyCode = e.keyCode;
alert(keyCode); //Undefined
console.log(e.data); //Undefined
});
});
如何使用组合事件获取键码,或者我可以为 Microsoft IME 日语键盘使用什么其他解决方案?
解决方案
推荐阅读
- c++ - spawn 和 co_spawn 有什么区别?(提升阿西奥)
- angular - 使用 @angular/fire 将 Angular 通用应用程序部署到 firebase 时出错
- django - 未找到带有参数 '('',)' 的 'single' 的反向操作。尝试了 1 种模式:['(?P
[-a-zA-Z0-9_]+)/$'] - python - 仅替换字典列表中字符串的部分
- ruby-on-rails - 找不到 resque worker 的日志作为 systemd 服务
- parallel-processing - 在 Fortran mpi 中并行化部分串行代码
- r - 不同宽度的条并删除 geom_bar() 中的空白
- swift - 增加 TextField 的可点击区域
- python - 如何将此 SAS 宏翻译成 python
- javascript - 如何获取 LOINC 表的下载链接