Zrobiłem Tak
if ( $("#dvr_wan_ip_adress").parents("#dvr_register_form").length == 1 ) {
if ( $('#dvr_wan_ip_adress').val().length == 0 ) {
setTimeout(function() { $('#message').addClass('error');}, 500);
setTimeout(function() { $('#message').attr( 'style', 'color: rgba(220,20,60,1)' );}, 500);
$( '#message' ).html("Należy Podać Adres IP WAN Rejestratora !!!");
$( '#dvr_wan_ip_adress' ).prop('required', true).addClass( 'error' ).attr( 'onmouseover', 'return Remove_Required()' );
ValidatorID = $( '#dvr_wan_ip_adress' );
return false;
}
if ( $('#dvr_wan_ip_adress').val().length != 0 ) {
var validChars = "0123456789";
var input = $( '#dvr_wan_ip_adress' ).val();
var ip_address = input.length >= 7 && input.length <= 16;
if(ip_address) {
var dot_count = 0;
for ( var i=0; i < input.length; i++ ) {
if (input[i]=='.') {
dot_count++;
}
}
if (dot_count === 3) {
var delimiter_1 = input.indexOf( ".", 0 );
var delimiter_2 = input.indexOf( ".", delimiter_1 + 1);
var delimiter_3 = input.indexOf( ".", delimiter_2 + 1);
var delimiter_4 = input.length;
var section_1 = delimiter_1;
var section_1_length = section_1 >= 1 && section_1 <= 3;
if (section_1 >= 1 && section_1 <= 3) {
var section_2 = delimiter_2 - delimiter_1 - 1;
if (section_2 >= 1 && section_2 <= 3) {
var section_3 = delimiter_3 - delimiter_2 - 1;
if (section_3 >= 1 && section_3 <= 3) {
var section_4 = delimiter_4 - delimiter_3 - 1;
if (section_4 >= 1 && section_4 <= 3) {
var pairs
= input
.split("."); for ( var i=0, psl = pairs.length, pair, j; i < psl; i++ ) {
pair = pairs[i];
for ( j = 0; j < pair.length; j++) {
if ( validChars.indexOf( pair.charAt(j) ) === -1 ) {
return false;
}
}
if ( pair > 255) {
info() ;
return false;
}
}
}
} else {
info() ;
return false;
}
} else {
info() ;
return false;
}
} else {
info() ;
return false;
}
} else {
info() ;
return false;
}
} else {
info() ;
return false;
}
}
};
function info() {
setTimeout(function() { $('#message').addClass('error');}, 500);
setTimeout(function() { $('#message').attr( 'style', 'color: rgba(220,20,60,1)' );}, 500);
$( '#message' ).html("Adres IP ma Niepopraewną Wartość !!!");
$( '#dvr_wan_ip_adress' ).prop('required', true).addClass( 'error' ).attr( 'onmouseover', 'return Remove_Required()' );
ValidatorID = $( '#dvr_wan_ip_adress' );
return false;
};
Jak dla mnie działa, ale pewnie można coś uprościć.