2009-09-28 5 views
2

У меня есть 2 разных сценариев, один JQuery сообщение для формы, а второй является JQuery форма проверки.Запуск формы JQuery проверки и формы JQuery после сценария вместе

Я бег после скрипта на кнопку Submit щелчка действия, поэтому он вступает в силу, прежде чем проверка:/и я не мог изменить проверку, чтобы выполнить до почтового скрипта :(так что теперь сформировать представление без проверки

Как сделать. это? Цените помогает!


JQuery POST код

$(function() { 

    $("#btnsend").click(function() { 

     var dataString = 'fullname='+ escape(document.contact.full_name.value); 
     $.ajax({ 
      type: "POST", 
      url: "query.php?act=sendMail", 
      data: dataString, 
      success: function() { 

      $('#contact-form').hide() 
         .html("<p>thanks!</p>") 
           .fadeIn(500, function() {$('#contact-form').append("");}); 
      } 

     }); 

     return false; 
    }); 

}); 

JQuery Validation

спасибо за плагин http://bassistance.de/jquery-plugins/jquery-plugin-validation/

<!-- Form Validation --> 
<script src="inc/validation/jquery.validate.js" type="text/javascript"></script> 
<script src="inc/validation/js/cmxforms.js" type="text/javascript"></script> 
<link rel="stylesheet" type="text/css" href="inc/validation/css/validation.css" media="screen" /> 

<script type="text/javascript"> 
$(document).ready(function() { 
    $("#commentForm").validate(); 
}); 
</script> 

Форма

<form id="commentForm" name="contact" method="post" action=""> 
    <ul id="contact-form"> 
     <li><label for="full_name">Full Name: *</label><input type="text" name="full_name" id="full_name" class="txt_input required" /></li> 
     <li class="alignRight"><input type="submit" value="Send" id="btnsend" name="btnsend" class="btn_submit" /></li> 
    </ul> 
</form> 
+0

+1 для формулировки и информации, заданной в вопросе, и предоставленного кода. – NDM

ответ

2
$("#commentForm").validate({ 
    submitHandler: function(form) { 
     // validation success, do something 
    } 
}); 

Позвоните в ваш ajax submit из функции обратного вызова функции успеха.

Проверьте: http://docs.jquery.com/Plugins/Validation/validate для получения дополнительной информации (я предполагаю, что мы говорим о том же плагине).

+0

Я устал ставить $ ("# btnsend"). Click (function() {...... all codehere .......} в том месте, где вы отметили // успех проверки. it сначала выполняйте проверку, но это не работает с jquery-post aftet, который:/Думаю, я должен использовать что-то еще, чем .click() для там ... –

+0

ps Я использую http://bassistance.de/jquery -plugins/jquery-plugin-validation/для проверки –

+0

К сожалению, похоже, что это не простое решение, я предлагаю вам добавить проверку if перед ajax, чтобы подтвердить, было ли поле заполнено перед отправкой запроса. есть только одно поле ввода, это должно быть хорошо, но если у вас есть больше и вы хотите использовать плагин проверки, тогда вам нужно другое решение. Извините, я не могу вам помочь. –

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