jQuery - 表单验证

时间:2012-03-22 10:48:05

标签: javascript jquery ajax

我正在尝试使用jQuery编写自己的表单验证脚本。

然而,我似乎无法让它工作,这可能是次要的,但我找不到问题的原因。

另外,我刚刚开始使用jQuery,我正在寻找一个好的语法检查器。任何人都可以推荐一个吗?

$(document).ready(function() {
  $('.error').toggle();
  });


//when the button is clicked

$(".button").click(function() {
        // validate and process form
        // first hide any error messages
    $('.error').hide();

      var name = $("input#name").val();
        if (name == "") {
      $("label#name_error").show();
      return false;
    }

          var name = $("input#email").val();
        if (name == "") {
      $("label#name_error").show();
      return false;
    }

          var name = $("input#subject").val();
        if (name == "") {
      $("label#name_error").show();
      return false;
    }

          var name = $("textarea#message").val();
        if (name == "") {
      $("label#name_error").show();
      return false;
    }

    var dataString = 'name='+ name + '&email=' + email + '&phone=' + phone;

        $.ajax({
      type: "POST",
      url: "bin/process.php",
      data: dataString,
      success: function() {
        $('#contact_form').html("<div id='message'></div>");
        $('#message').html("<h2>Contact Form Submitted!</h2>")
        .append("<p>We will be in touch soon.</p>")
        .hide()
        .fadeIn(1500, function() {
        $('#message').append("<img id='checkmark' src='images/check.png' />");
        });
      }
     });
    return false;
    });
});

2 个答案:

答案 0 :(得分:2)

确保你包含jQuery.validate.min.js或jquery.validate.unobtrusive.min.js(无法记住我的头脑)文件,然后在jQuery中验证如下:

$('.button').click(function () {
if ($('form').valid()) {
    //do saving stuff
} else {
    //errors on form - let user correct them
}

});

就语法检查器而言,不确定您正在开发什么平台但是我正在使用Visual Studio 2010,如果您包含js文件,那么VS2010会提供突出问题的智能感知。

答案 1 :(得分:0)

<script type="text/javascript">
$(document).ready(function() {      
 $("#MyForm").validate({
             rules: {

                 name: {required: true},
                 phone:{required: true},
                 email:{required: true}

                 },
                 messages: {

                  name: {required: "Please Enter  Name"},
                 phone:{required: "Please Enter Phone No"},
                 email:{required: "Please Enter Email "}

                 } ,
                 submitHandler: function(form) {
                        form.submit();
                 } 

            });
});

</script>