0

我需要使用 jQuery 验证表单,然后将其提交到 JavaScript 文件,该文件将其重定向到确认/发送邮件页面。我这样做的原因是为了防止垃圾邮件没有放入某种类型的验证码。我基本上输入了错误的 url 用于表单的页面,然后将其更改为外部 JavaScript 文件中的正确页面。一切都很好,除了表单在验证之前提交。我可以看到它在提交之前标记错误一秒钟。

验证 JS:

<script type="text/javascript">
$(document).ready(function(){

    $('#contactform').submit(function() {
      return $('#contactform').valid();
    });

        $("#contactform").validate();

            $("#Name").rules("add", {
        required: true,
        minlength: 5,
        messages: {
        required: "Required",
        minlength: jQuery.format("Minimum {0} Characters Required")
     }   
    }); 
        $("#Question").rules("add", {
        required: true,
        minlength: 20,
        messages: {
        required: "Required",
        minlength: jQuery.format("Question Must Be {0} Character Long")
     }

    });

    $("#math").rules("add", {
        required: true,
        equalTo: "#math2",
        messages: {
        required: "Solve Security Question.",
     }
    });


});
</script>

外部 JS 重定向:

function submitCommentForm() {
    // Change the form action to the real submission page
    document.getElementById('contactform').action = "confirmation.php";
    // Submit the form
    document.getElementById('contactform').submit();
}
4

2 回答 2

5

改变

$('#contactform').submit(function() {
  return $('#contactform').valid();
});

$('#contactform').submit(function() {
  if($(this).valid()){
    submitCommentForm();
  }else{
    alert('Please fix the errors within the form.');
  }
  return false;
});
于 2012-08-10T14:59:47.883 回答
0

您可以使用 jQuery 插件来验证表单数据。

这是一个很好的->番茄酱

于 2012-08-10T15:58:31.300 回答