【发布时间】:2013-10-31 00:46:42
【问题描述】:
我有 javascript 代码可以验证完成订单的电话号码。
function validatePhoneNumber(phone) {
var trimPhone = phone.replace(new RegExp(" ","g"),'');
var phoneNumber = trimPhone.split(/\d/).length - 1 ;
return phoneNumber >= 10 && phoneNumber <= 16 && phoneNumber === trimPhone.length ;
}
这是结帐按钮的代码
if(!validatePhoneNumber($('#phone').val())){
$('#phone').css("color", "#ff0000");
$('#invalidNumberFormat').show();
submit = false;
}
else{
$('#invalidNumberFormat').hide();
}
该代码在 Firefox 和 Chrome 中运行良好,但在 IE8 中它总是返回错误消息,指出字符串不在 10 到 16 个字符之间。
可能是什么原因?
【问题讨论】:
标签: javascript validation internet-explorer-8 replace split