如何验证两个文本输入,如果填写了一个,验证应该忽略另一个?

时间:2017-09-14 10:44:18

标签: php jquery

我有一个表单,其中包含文本字段,供用户键入一个或多个文本字段并继续搜索,两个文本字段用于IP地址:

IP地址 外部IP地址 我正在使用jquery验证器,但是当用户想要搜索仅与IP Addrese匹配的结果时,外部IP地址的另一个字段显示验证错误,ho仅显示已填充的IP字段的验证错误? 这是我在js文件中的内容:

jQuery.validator.addMethod("ipAddressFormat",function(value, element){
theName = "IPaddress";
var ipPattern = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/;
var ipArray = value.match(ipPattern);
if (value == "0.0.0.0" || value == "255.255.255.255" || 
    value == "10.1.0.0" || value == "10.1.0.255" || ipArray == null)
    return false;
else {
    for (i = 0; i < 4; i++) {
        thisSegment = ipArray[i];
        if (thisSegment > 254) {
            return false;                
        }
        if ((i == 0) && (thisSegment > 254)) {
            return false;
        }
    }
}
return true;   


}, "Invalid IP Address");

$(document).ready(function() {    
    $("#agentsSearchForm").validate({
        rules: {
            valueApiAddress: {
                ipAddressFormat: true               
            }, 
            valueExternalApiAddress: {  
                ipAddressFormat: true                
            },
            valuePort: {
                range: [1, 65535]                
            }  
        },
         messages: {    
            valuePort: {
                range: "Valid port range is 1 to 65535."
            }  
        }  
    });
});

由于

1 个答案:

答案 0 :(得分:0)

您可以参考以下代码进行验证。您无需添加其他验证方法,它已经可用。

foreach (var item in importList.OfType<Device1ImportModel>())                  
{
    string number = item.SerialNumber;
}