Подтвердить что ты не робот

JQuery проверить плагин на DIV

Я пытаюсь использовать проверить плагин на div, как показано в ответе этот вопрос:

<script type="text/javascript">
  $("#pseudoForm").validate({
    onfocusout:true,
    rules:{
      first_name:"required",
      last_name:"required"
    }
  });
</script>
<!-- whatever -->
<div id="pseudoForm">
  <input type="text" name="first_name"/>
  <input type="text" name="last_name"/>
</div>

У меня есть все в форме.

Я получаю кучу разных ошибок в разных браузерах.

  • Firefox: валидатор в undefined
  • IE8: "настройки" являются нулевыми или не являются Объект
  • Chrome. Невозможно прочитать настройки свойств 'undefined

Любая помощь оценивается!

4b9b3361

Ответ 1

Это не тот ответ, который вы хотите услышать, но другой ответ неверен (возможно, это было правильно, когда оно было опубликовано, но с тех пор было несколько важных изменений плагина проверки jQuery).

Плагин проверки (в настоящее время) предназначен для работы с <form> и только на <form>. Вы также можете заметить, что вся документация плагина ссылается на форму, а не на другой общий контейнер.

Сам плагин отслеживает validator.currentForm внутренне, что относится к this переданного в селекторе, получая .elements, и т.д., что... он действительно не будет работать каким-либо другим способом, а не тем, как написана текущая версия.

Общее решение/альтернативный подход здесь: вызовите .validate() в элементе <form> (скорее, оболочка jQuery), не любой другой контейнер. Если вам нужно разделить ваш <form> элемент <fieldset>, возможно, используя опцию ignore: ':hidden' в .validate(), если вы этого не сделаете хотите проверить поля ввода, которые не видны пользователю.

Ответ 3

Вам не хватает закрывающей скобки. Вместо этого попробуйте:

$("#pseudoForm").validate({
    onfocusout:true,
    rules:{
        first_name:"required",
        last_name:"required"
    }
});

Ответ 4

Вы можете получить ту же ошибку, если вы выберите форму по классу

$(".form_class").validate(...

вместо ID $("#form_id").validate(...

или имя тега $("form").validate(...

Ответ 5

Я знаю, что это очень старая тема, но она может помочь кому-то прийти на эту страницу.

Пожалуйста, проверьте [1]: http://encosia.com/asp-net-webforms-validation-groups-with-jquery-validation/ очень полезный веб-сайт и продемонстрируйте, какой фактический ответ заслуживает этого вопроса.

[Групповая проверка] [1]

Ответ 6

Откройте jquery.validate.js или jquery.validate.min.js и найдите (ctrl + F) "label" и replaceAll с помощью вашего требуемого тега:

Пример: div

затем выполните проверку.

Ответ 7

//Java Script
 $("#getOtp").click(function(){
     jQuery(document).ready(function(){





        var MobileNo = jQuery("#mobileNo").val();
        var MobileNoLength = MobileNo.length;  
        var zipRegex = /^\d{10}$/;
         var mobileNo = $("#mobileNo").val();

        if (!zipRegex.test(MobileNo))
        { 
           jQuery('#mobileno_message').show();


        }
        else
        { 

          // success!

             jQuery('#mobileno_message').hide();
             $.ajax({
            type : 'POST',
            url  : '<?php echo site_url('Login/send_otp'); ?>',
            data : {Otp_MobileNo:mobileNo,},
            dataType    : 'json',
            beforeSend: function()
            { 
              $("#error").fadeOut();
            },
            success :  function(response)
            { 
            alert(response.message_text);
            $("#check-otp").delay().animate({
                height: 'toggle',
              },
              "slow");
            $("#getOtp").hide();
            }
         });





        }

      });



       });

Ответ 8

В настройках validate() поместите onsubmit: !$.browser.msie