1

我检查了其他正则表达式电话格式,但我的略有不同。当用户使用 keyup 函数 (jQuery) 键入电话号码时,我编写了代码来格式化电话号码。我使用了一些非常基本的正则表达式模式,但是我认为所有格式都可以通过正则表达式完成。

  • 电话格式会像(312) 317 72 84

  • 字符总数为 15

  • 当用户键入代码时,将“(”和“”添加到代码中

  • 电话号码不应以0

当前问题:由于它在代码中添加了“”空格,但是当用户按下退格键时,它会删除空格并添加新空格。退格键应单独处理

我当前的代码可以在这里找到:http: //jsfiddle.net/kWd4k/

4

2 回答 2

1

在这种情况下包装您的代码:

if(e.keyCode!=8){ //since you're using jQuery, you can use e.which instead
...
}

http://jsfiddle.net/sNYCv/

于 2012-11-19T06:23:54.367 回答
0

将事件对象传递给处理 keyup 事件的函数并使用检查退格e.which

$("input.phone").keyup(function(e) { 
    if(e.which!=8){
    ....
    }
});
于 2012-11-19T06:36:10.097 回答