如何在jquery中检查IP地址的validation

我需要在我的项目中添加IPvalidation。在jquery或jquery mobile中有任何函数。它会validation输入字段吗?

谢谢

请参阅此文档IPvalidation

在这里,他使用了jqueryvalidator.js并用示例进行了解释。

  $.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); }, 'Invalid IP address'); $('#form1').validate({ rules: { ip: { required: true, IP4Checker: true } } }); 

您可以使用正则表达式来测试IP是否有效:

 "127.0.0.1".match(/^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/); 

简短版本:

 ^(?!0)(?!.*\.$)((1?\d?\d|25[0-5]|2[0-4]\d)(\.|$)){4}$ 

在这里解释https://stackoverflow.com/a/26445549/3356679

嗨,这是IP地址的最佳解决方案和掩码

 $.validator.addMethod('IP4Checker', function(value) { var ip = /^(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))$/; return value.match(ip); }, 'Invalid IP address'); var $validator = $("#addCardForm").validate({ rules: { txtIP: { required: true, IP4Checker: true } } }); 

这适用于IP地址

 $.validator.addMethod('IP4Checker', function(value) { var ip="^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." + "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." + "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." + "([01]?\\d\\d?|2[0-4]\\d|25[0-5])$"; return value.match(ip); }, 'Invalid IP address'); $('#remoteForm').validate({ rules: { ipAddr: { required: true, IP4Checker: true } } }); 

我使用jQuery Validation Plugin:

 $.validator.addMethod('IP4Checker', function(value) { var ip = "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$"; return value.match(ip); }, 'Invalid IP address'); $('#form').validate({ rules:{ ip:{ required: true, IP4Checker: true } } }); 

希望有帮助。

请参阅: 正则表达式以匹配DNS主机名或IP地址?

 /* validIpAddressRegex = "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$"; validHostnameRegex = "^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])$"; */ $.validator.addMethod('ipChecking', 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]?)$"; validIpAddressRegex = "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$"; ipCheckFlag = true; ipLists = value.split(','); for(ip=0; ip 

链接

除了@RAVI MONE对子网掩码的IP地址的回答:

 $.validator.addMethod('IP4Checker', function(value) { var ip="^$|([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." + "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." + "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." + "([01]?\\d\\d?|2[0-4]\\d|25[0-5])((/([01]?\\d\\d?|2[0-4]\\d|25[0-5]))?)$"; return value.match(ip); }, 'Invalid IP address.');