アプリケーションで国民 ID カード番号を検証しようとしています。しかし、それは機能していません。すべての値に対してエラーをスローします。正しいフォーマットを入力しても。私の形式は 123456789v または 123456789x です。ここに jQuery 検証を追加しました。誰でも私を助けてもらえますか?詳細が必要な場合は、コメントしてください。
$('.btn-submit').click(function(e) {
required = ["employeeName","gender","employeeId","nic","firstName","lastName","departmentId","designation","address"];
// Declare the function variables:
// Parent form, form URL, email regex and the error HTML
var $formId = $(this).parents('form');
var formAction = $formId.attr('action');
var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
var nicReg=/^[0-9]{9}[vVxX]$/;
var $error = $('<span class="error"></span>');
// Prepare the form for validation - remove previous errors
$('li',$formId).removeClass('error');
$('span.error').remove();
// Validate all inputs with the class "required"
$('.required',$formId).each(function(){
for (i=0;i<required.length;i++){
var inputVal = $('#'+required[i]).val();
var $parentTag = $('#'+required[i]).parent();
if(inputVal == ''){
$parentTag.addClass('error').append($error.clone().text('Required Field'));
}
}
// Run the email validation using the regex for those input items also having class "email"
if($(this).hasClass('nic') == true){
var $parentTag2=$('#nic').parent();
if(!nicReg.test(inputVal)){
$parentTag2.addClass('error').append($error.clone().text('Enter valid NIC'));
}
}
// Check passwords match for inputs with class "password"
if($(this).hasClass('password') == true){
var password1 = $('#password-1').val();
var password2 = $('#password-2').val();
if(password1 != password2){
$parentTag.addClass('error').append($error.clone().text('Passwords must match'));
}
}
});
// All validation complete - Check if any errors exist
// If has errors
if ($('span.error').length > 0) {
$('span.error').each(function(){
// Set the distance for the error animation
var distance = 5;
// Get the error dimensions
var width = $(this).outerWidth();
// Calculate starting position
var start = width + distance;
// Set the initial CSS
$(this).show().css({
display: 'block',
opacity: 0,
right: -start+'px'
})
// Animate the error message
.animate({
right: -width+'px',
opacity: 1
}, 'slow');
});
} else {
this.form.action = "DepartmentServlet?method=add";
$formId.submit();
}
// Prevent form submission
e.preventDefault();
});
// Fade out error message when input field gains focus
$('.required').focus(function(){
var $parent = $(this).parent();
$parent.removeClass('error');
$('span.error',$parent).fadeOut();
});
});