下面是我编写的代码将IP地址屏蔽并使用jQuery进行验证的代码片段。但是,我收到有效IP地址的错误消息(如222.222.222.222)。有人可以帮忙吗?jQuery IP地址验证失败
//Validate the form
$('#form').validate({
rules: {
ip: {
required: true,
IP4Checker: true
},
subnet: {
required: true,
IP4Checker: true
},
gateway: {
required: true,
IP4Checker: true
},
dns1: {
required: true,
IP4Checker: true
},
dns2: {
required: true,
IP4Checker: true
}
},
messages: {
ip: "Please enter a valid IP Address",
subnet: "Please enter a valid Subnet Mask Address",
gateway: "Please enter a valid Gateway Address",
dns1: "Please enter a valid DNS1 Address",
dns2: "Please enter a valid DNS2 Address"
}
});
//Validate the IP addresses
$(function() {
$.validator.addMethod('IP4Checker', function(value) {
var ip = "^(?:(?:25[0-5]2[0-4][0-9][01]?[0-9][0-9]?)\\.){3}" +
"(?:25[0-5]2[0-4][0-9][01]?[0-9][0-9]?)$";
return value.match(ip);
});
});
//Set mask for IP address fields
$(".ip").mask("999 . 999 . 999 . 999");
//Store numbers in hidden field
$(".ip").blur(function() {
//Create char array from phone number field
var charArray = $(this).val().split("");
var num = "";
//taking the input
$.each(charArray, function(index, value) {
num = num + value;
});
});
更换你的函数我尝试过,但它力的工作,对不起。我也尝试过其他一些正则表达式,但它也有效。 请参考这个小提琴:http://jsfiddle.net/K9b9R/4/ –
看看我的更新应该看到问题 – AbstractChaos
哇,那很奇怪。我想到了这一点,并删除了这些空间。但是我认为那次我没有使用这个正则表达式。非常感谢! :) –