javascript验证只允许使用带退格键、箭头键和删除键的字符和逗号

javascript验证只允许使用带退格键、箭头键和删除键的字符和逗号,javascript,Javascript,我需要的文本框只允许字符和逗号与箭头键,退格和删除键 $(文档).ready(函数(){ $('#text')。按键(功能(e){ var regex=new RegExp(“^[a-zA-Z,]”); var str=String.fromCharCode(!e.charCode?e.which:e.charCode); if(正则表达式测试(str)){ 返回true; } e、 预防默认值(); 返回false; }); }); 检查此项 $(文档).ready(函数(){ $('#t

我需要的文本框只允许字符和逗号与箭头键,退格和删除键

$(文档).ready(函数(){
$('#text')。按键(功能(e){
var regex=new RegExp(“^[a-zA-Z,]”);
var str=String.fromCharCode(!e.charCode?e.which:e.charCode);
if(正则表达式测试(str)){
返回true;
}
e、 预防默认值();
返回false;
});
});

检查此项

$(文档).ready(函数(){
$('#text1')。按键(功能(e){
var k=e,其中;
var ok=k==127 | | k==8 | | k==9 | | k==13 | | k==37 | | k==38 | | k==39 | k==40;
ok=ok | |
k>=65&&k=97&&k检查此项

$(文档).ready(函数(){
$('#text1')。按键(功能(e){
var k=e,其中;
var ok=k==127 | | k==8 | | k==9 | | k==13 | | k==37 | | k==38 | | k==39 | k==40;
ok=ok | |

k>=65&&k=97&&k那么实际的问题是什么?使用的代码不起作用吗?您需要的不仅仅是一个键事件处理程序,因为如果您不需要实时验证,可以通过编辑菜单或拖放HTML模式来更改输入。它适用于字符和逗号,但退格键、删除键和箭头键不适用于正则表达式只允许字母和逗号。此外,我不确定
String.fromCharCode
是否实际返回任何对控件“字符”有用的内容例如退格键或光标键。那么实际问题是什么?使用的代码不起作用吗?您需要的不仅仅是键事件处理程序,因为输入可以通过编辑菜单或拖放来更改。dude HTML模式如果您不需要实时验证,它适用于字符和逗号,但退格键、删除键和箭头键不起作用表达式只允许字母和逗号。此外,我不确定
String.fromCharCode
是否实际返回任何对控件“字符”有用的内容例如退格键或光标键。它的工作原理与我的代码相同……我需要退格删除和箭头键也适用于该文本框它的工作原理与我的代码相同……我需要退格删除和箭头键也适用于该文本框
$(document).ready(function() {
    $('#text1').keypress(function (e) {
        var k = e.which;
        var ok = k == 127 || k == 8 || k == 9 || k == 13 || k == 37 || k == 38 || k == 39 || k == 40;
        ok = ok || 
           k >= 65 && k <= 90 || // A-Z
           k >= 97 && k <= 122 || // a-z
           k == 44 ; // ,

        if (!ok){
          e.preventDefault();
        }
    });
});