Jquery 条件测试到正则表达式转换(电话号码)
我检查了其他regex手机格式,但我的有点不同。当用户使用keyup函数(jQuery)键入电话号码时,我写下了格式化电话号码的代码。我使用了一些非常基本的正则表达式模式,但是我认为所有的格式都可以由正则表达式完成Jquery 条件测试到正则表达式转换(电话号码),jquery,regex,Jquery,Regex,我检查了其他regex手机格式,但我的有点不同。当用户使用keyup函数(jQuery)键入电话号码时,我写下了格式化电话号码的代码。我使用了一些非常基本的正则表达式模式,但是我认为所有的格式都可以由正则表达式完成 电话格式类似于(312)317 72 84 字符总数为15 当用户键入代码时,会在代码中添加“(”和“” 电话号码不应以0开头 当前问题: 由于它在代码中添加了“”空格,但当用户按backspace时,它会删除空格并添加新的空格。backspace键应该单独处理 我的当前代码可在
- 电话格式类似于
(312)317 72 84
- 字符总数为15
- 当用户键入代码时,会在代码中添加“(”和“”
- 电话号码不应以
0开头
我的当前代码可在此处找到:在此条件下包装代码:
if(e.keyCode!=8){ //since you're using jQuery, you can use e.which instead
...
}
在此条件下包装代码:
if(e.keyCode!=8){ //since you're using jQuery, you can use e.which instead
...
}
将事件对象传递给处理keyup事件的函数,并使用
e检查退格
$("input.phone").keyup(function(e) {
if(e.which!=8){
....
}
});
将事件对象传递给处理keyup事件的函数,并使用e检查退格
$("input.phone").keyup(function(e) {
if(e.which!=8){
....
}
});
事实上,您的电话号码的格式略有不同,不值得单独提问。请花一点时间了解之前的方法,您可以轻松地调整它们。是的,我知道这一个问题根本不是唯一的问题。但是,我对正则表达式模式完全陌生。我可能很难形成一个我认为你的问题根本不是关于regexen的,不是关于backspace键的行为吗?我认为所有那些杂乱无章的if/if-else条件都可以删除。但不确定regex是否能处理所有问题。你的电话号码格式略有不同,这一事实不值得单独提问。花点时间来理解接受前面的方法,你可以很容易地适应它们。是的,我知道这一个问题根本不是一个独特的问题。但是,我对正则表达式模式完全陌生。我可能很难形成一个模式来完全实现我想要的。我想你的问题根本不是关于正则表达式的,不是关于退格键行为吗?我想k所有那些杂乱的if/if-else条件都可以删除,但不确定正则表达式是否可以处理所有这些条件