如果输入的所有数字为零,则创建一个脚本以提示警报。脚本工作正常,但通过JS错误在firebug控制台,如果数字输入正确。
如何在没有错误提示的情况下解决这个问题。
密码-
jQuery("#EventPhone").focusout(function(){
var $this = jQuery(this);
var phoneNum = ($this.val()).toString();
var count1 = phoneNum.match(/0/g).length || "";
var phoneNumLen = phoneNum.length
if( phoneNumLen == count1 )
{
alert('All numbers in a phone number cannot be zero!!');
$this.val("");
}
});小提琴- http://jsfiddle.net/8XmpG/
发布于 2013-07-26 10:37:58
现在,您在这一行中有错误:
var count1 = phoneNum.match(/0/g).length || "";因为phoneNum.match(/0/g)可能是null,所以,如果您首先检查它,如下所示:
var count1 = (phoneNum.match(/0/g) && phoneNum.match(/0/g).length) || "";一切都会好的。
检查空间:
var phoneNum = ($this.val()).toString().replace(' ', '');发布于 2013-07-26 10:41:46
更新(如果允许字符)
使用此代码- DEMO
jQuery("#EventPhone").focusout(function(){
var phoneNum = parseInt($(this).val().trim().replace( /\D+/g,''));
if(phoneNum === 0 )
alert("All numbers in a phone number cannot be zero!");
});如果不允许字符,请使用此代码- DEMO
jQuery("#EventPhone").focusout(function(){
var $this = jQuery(this);
var phoneNum = $this.val().trim();
var phoneNumber = parseInt(phoneNum);
if(phoneNum == phoneNumber && phoneNumber !== 0 ) // don't use phoneNum === phoneNumber
{
alert("Right Number");
}
else{
alert('Wrong Number');
$this.val("");
}
});https://stackoverflow.com/questions/17879132
复制相似问题