У меня есть форма проверки. Мое текстовое поле не позволяет использовать специальный символ, кроме (-), используя проверку JQuery. Но проблемы в том, что проверка в заявке и текстовое поле rfq не работает. Он принимает специальные символы и передает форму.Jquery Removeclass and Form Validation
Это моя рабочая скрипка. http://jsfiddle.net/mHCk7/1/
Помогите, пожалуйста?
jQuery(function($) {
var validation_holder;
$("form#register_form input[name='submit']").click(function() {
var validation_holder = 0;
// /^[A-Za-z\s]+$/
var rfq = $("form#register_form input[name='n_rfq']").val();
var rfq_regex = /^[0-9\-]+$/; // reg ex qty check
var bid = $("form#register_form input[name='n_bid']").val();
var bid_regex = /^[0-9\-]+$/; // reg ex qty check
var mode = $("form#register_form select[name='n_mode']").val();
var mode_regex = /^[a-zA-Z ]+$/; // reg ex qty check
/* validation start */
if(bid == "" || bid.hasClass("mandatory")) {
$("span.val_bid").html("This field is required.").addClass('validate');
validation_holder = 1;
} else {
if(!bid_regex.test(bid)){ // if invalid phone
$("span.val_bid").html("Integer Only is Allowed!").addClass('validate');
validation_holder = 1;
} else {
$("span.val_bid").html("");
}
}
if(rfq == "" || rfq.hasClass("mandatory")) {
$("span.val_rfq").html("This field is required.").addClass('validate');
validation_holder = 1;
} else {
if(!rfq_regex.test(rfq)){ // if invalid phone
$("span.val_rfq").html("Integer Only is Allowed!").addClass('validate');
validation_holder = 1;
} else {
$("span.val_rfq").html("");
}
}
if(mode == "") {
$("span.val_mode").html("This field is Required.").addClass('validate');
validation_holder = 1;
} else {
if(!mode_regex.test(mode)){ // if invalid phone
$("span.val_mode").html("Invalid Special Characters!").addClass('validate');
validation_holder = 1;
} else {
$("span.val_mode").html("");
}
}
if(validation_holder == 1) { // if have a field is blank, return false
$("p.validate_msg").slideDown("fast");
return false;
} validation_holder = 0; // else return true
/* validation end */
}); // click end
}); // jQuery End
$('#txt1').change(function() {
if ($(this).val() == 'NEGOTIATED' || $(this).val() == 'SHOPPING' || $(this).val() == '') {
$("#txt2,#txt3").val('');
$("#txt2").removeClass("mandatory");
$("#txt3").removeClass("mandatory");
}
else if ($(this).val() == 'BIDDING') {
$("#txt3").val('');
$("#txt3").removeClass("mandatory");
}
else if ($(this).val() == 'RFQ') {
$("#txt2").val('');
$("#txt2").removeClass("mandatory");
}
else {
//here you can specify what to do if the value is NOT negotiated or SHOPPING
}
});
В случае, если поля имеют обязательный параметр '' '' '' '' '' '' '' '' '' '' '' '' '' '_ valid_ ... – CBroe
Вам нужно использовать' && 'вместо' || ':' if (bid == "" && bid.hasClass ("обязательный")) '. (Чтение: если поле пуст _ и_, оно обязательно.) –
О, cmon, требуется как проверка, так и удаление. Что мне делать? – user3097736