Intereting Posts

Проверка JQuery не работает

У меня есть одна форма, в которой один тип ввода, значение которого «Имя». Но это можно изменить в функции onfocus. Я хочу, чтобы проверка для этого поля ввода была пустой или «Имя»,

У меня есть два jQuery-файла jquery-1.4.2.min.js & jquery.validate.pack.js .

У меня есть другой файл jQuery для этой формы:

 jQuery(document).ready(function() { jQuery("#frmRegister").validate({ errorElement:'div', rules: { Fname:{ required:true, minlength: 2, maxlength:30 } }, messages: { Fname:{ required: "Please enter first name", minlength: "Required minimum 2 characters allowed", maxlength: "Required maximum 30 characters allowed" } }); jQuery("#msg").fadeOut(5000); }); 

В этом файле required:true работает, если значение пустое, но по умолчанию значение «Имя», поэтому оно не работает. Я хочу, чтобы оба они были пустыми, или это «Имя».

 <form name="frmRegister" id="frmRegister" method="post"> <ul class="reset ovfl-hidden join"> <li class="fall"> <label for="Fname">Full Name:</label> <div class="fl"> <input type="text" class="form" id="Fname" name="Fname" value="First Name" onfocus="if(this.value=='First Name')this.value='';" onblur="if(this.value=='')this.value='First Name';" /> </div> </li> </ul> </form> 

Пожалуйста, ответьте как можно раньше.

Спасибо.

Вы можете использовать требуемое правило с Callback и проверить равенство с First Name перед возвратом

Вы должны создать пользовательские правила проверки для таких случаев, как описано здесь: jquery.validation – как игнорировать значения по умолчанию при проверке обязательных полей

это мой код, он работает правильно: попробуйте это

 $().ready(function() { $("#form2").validate(); // validate signup form on keyup and submit $("#form1").validate({ rules: { userid: "required", username: { required: true, minlength: 2 }, password: { required: true, minlength: 5 }, authority: { required: true }, emailid: { required: true, email: true } }, messages: { userid: "Please enter your user Id", username: { required: "Please enter a username", minlength: "Your username must consist of at least 2 characters" }, password: { required: "Please provide a password", minlength: "Your password must be at least 5 characters long" }, emailid: "Please enter a valid email address", authority:"Please select Authority" }, } }); 

Удалили ли вы добавление пользовательской проверки]

 jQuery.validator.addMethod("workPublicserviceDate", function(value, element) { var hint = '<?php echo $dateHint; ?>'; var format = '<?php echo $format; ?>'; var pubService = strToDate($('#txtAPS').val(), format) var dateAssume = strToDate($('#txtAssumeDate').val(), format); if (pubService && dateAssume && (pubService > dateAssume)) { return false; } return true; }, "" ); 

Заметьте, я добавил пример

 $("#frmEmpJobDetails").validate({ rules: { txtAPS: { workPublicserviceDate: function(){ return ['<?php echo $dateHint; ?>','<?php echo $format; ?>']}, required:true }, } messages: { txtAPS : { workPublicserviceDate: '<?php echo __("Invalid date."); ?>', } 

У вас может быть собственный код для следующего:

 jQuery(document).ready(function() { jQuery("#frmRegister").validate({ errorElement:'div', rules: { Fname:{ required: { depends: function(element) { return (($("#Fname").val() == "First Name") || ($("#Fname").val() == "")); } }, minlength: 2, maxlength:30 } }, messages: { Fname:{ required: "Please enter first name", minlength: "Required minimum 2 characters allowed", maxlength: "Required maximum 30 characters allowed" } }); jQuery("#msg").fadeOut(5000); }); 

Я предполагаю, что идентификатор элемента, который вы проверяете, является «Fname».