运行jquery表单验证和jquery表单一起发布脚本

时间:2009-09-28 13:50:25

标签: jquery validation forms submit

我有两个不同的脚本,一个是 jquery post for form ,第二个是 jquery表单验证

我在提交按钮单击操作时运行后脚本,因此它在验证之前生效:/并且我无法在发布脚本之前更改验证运行:(所以现在它表单提交而不验证。

怎么能成功呢?感谢帮助!


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验证

感谢插件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>

1 个答案:

答案 0 :(得分:2)

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

在成功函数回调中调用你的ajax提交。

检查:http://docs.jquery.com/Plugins/Validation/validate了解更多信息(我假设我们正在讨论相同的插件)。