2013-11-01 5 views
0

У меня есть форма, и ajax call.data заполняются в форме и отправляются на удаленный, в то же время пользователь создается в моей базе данных с помощью ajax call.but проблема заключается в проверке, которая должна применяться здесь , например, я применяю любую проверку jquery. Мне нужно проверить, является ли форма действительной, и затем я могу вызвать ajax, если форма действительна, иначе мудрая база данных будет заполнена пустыми данными. Я попробовал с bvalidator, но я не знаю, как определить форму является действительным или недействительным, используя любую библиотеку JQuery валидаторAjax вызов только в том случае, если проверка jquery действительна

<form id="inform" action="http://site.com"> 
<input type="text" id="name" /> 
<input type="text" id="email" /> 
<input type="button" name="subaction" id="infuse" /> 
</form> 

    <script language ="javascript" type = "text/javascript" > 
    $na= jQuery.noConflict(); 
    $na(document).ready(function(){ 
      $na('#infuse').click(function(){ 


         var name= $na('#name').val(); 

         var email = $na('#email').val(); 


       $na.ajax({ 
          type: "POST", 
          url: '<?php bloginfo('template_url')?>/user_create.php', 
          data: 'name='+name+'&email='+email, 
          cache: false, 


          success: function(result){ 
                jQuery('.err_msg').html(result); 
                 jQuery("#inform").submit(); 
               } 
              }); 


        }); 
    }); 

    </script> 
+1

В вашем вопросе, похоже, есть опечатка. Вы действительно хотите сохранить значение в 'email' в переменной под названием« age »и никогда не использовать ее снова? –

+0

Не могли бы вы написать свои собственные проверки, которые лучше подходят для вашего приложения? –

+0

ya по ошибке я написал его не оригинальную версию, но все, что мне нужно, является действительной формой перед вызовом ajax и если действительный переход к ajax-процессу – Vishal

ответ

-1

Вы могли бы сделать что-то вроде этого

<script language ="javascript" type = "text/javascript" > 
$na= jQuery.noConflict(); 
var name; 
var email; 
var options10 = { 

    // shows or hides error all messages container after validation completes 
    onAfterAllValidations: function(elements, formIsValid){ 

     // if validation failed 
     if(!formIsValid) 
      callAjax(); 
     else{ 
      //do something 
     } 
    } 
}; 


function callAjax(){ 
    $na.ajax({ 
          type: "POST", 
          url: '<?php bloginfo('template_url')?>/user_create.php', 
          data: 'name='+name+'&email='+email, 
          cache: false, 
          success: function(result){ 
               jQuery('.err_msg').html(result); 
                jQuery("#inform").submit(); 
              } 
           }); 
} 
$na(document).ready(function(){ 
     $('#inform').bValidator(options10); 

     $na('#infuse').click(function(){ 


        name= $na('#name').val(); 
        email = $na('#email').val(); 

     }); 
}); 

</script> 

Я не проверял это, но, надеюсь, это работает. Важно то, что вы можете использовать обратные вызовы: onAfterAllValidations.

+0

спасибо anudeep, я попробую и скажу вам. Я надеюсь, что это сработает. – Vishal

+0

Привет jquery validation использует входной тип submit, но когда я использую его после подтверждения, форма отправляется, и мой вызов ajax не запускается, поэтому что делать, потому что ранее я использовал кнопку типа ввода и отправлял форму после ajax-вызова. – Vishal

Смежные вопросы