我使用以下功能验证电话号码文本框。它工作正常。此功能仅允许输入数字,但如果我输入文本框,条目将显示为 1111111 。但我需要条目看起来像 111-111-1111 111111 。
我该怎么做?
$('input[id*=Phone]').live('keypress',function(evt){
var phValidateid=$(this).attr("id");
if (event.keyCode > 47 && event.keyCode < 58) {
return true;
}
return false;
});
答案 0 :(得分:4)
$('input').on('keyup',function(evt){
var len = this.value.length;
if (len == 3 || len == 7 || len == 11) {
$(this).val(this.value + "-");
}
else if (len == 15) {
$(this).val(this.value + " ");
}
});
答案 1 :(得分:0)
尝试
return String.fromCharCode(event.keyCode).search(/[\d\-]/) > -1; // true if number or dash; false otherwise
或者如果您想检查输入的孔值
$('input[id*=Phone]').live('keypress',function(evt){
return $(this).val().search(/^\d{3}\-\d{3}\-\d{4} \d{6}$/) > -1;
});