1

我想使用 jquery 验证我的表单(字段 'name1' 是必需的,'email' 也是必需的,并且应该采用电子邮件格式。我按照教程进行操作,但我无法让它工作。我该如何解决它?

先感谢您。

我的代码:

     <html>
        <head>
   <script src="/webvanta/js/jquery/1.4/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="/webvanta/js/jquery/1.4/plugins/form/jquery.form.js" type="text/javascript"></script>
<script src="/webvanta/js/jquery/1.4/plugins/validate/jquery.validate.min.js" type="text/javascript"></script>
        </head>
        <body>
        <script type="text/javascript">
          $(document).ready(function() {
           $("#myform").validate({
           rules: {
             name1: "required",
             email: {
               required: true,
               email: true
             }
           },
           messages: {
             name1: "Please specify your name",
             email: {
               required: "We need your email address to contact you",
               email: "Your email address must be in the format of name@domain.com"
             }
           }
        })
        });

        </script>

        <?php include 'header.php'; ?>

        <form id = "myform" action="picture.php" method="get">
        Picture name: <input name="name1" class="required"   /><br>
        Email: <input name="email" class="required"  />

        <input type="submit" value="Click" />
        </form>
        <br>




        </body>
        </html> 
4

3 回答 3

2

一个非常简单的ajax示例:

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

    var str = $("#your-form").serialize();


    $.ajax({
      type: "POST",
      url: "url-to-your-file.php",
      data: str,
      success: function(msg) {

          if(msg=="1") {//let's say 1 means error, do stuff here}
          if(success=="0){//success, do stuff here}
          }
    });


    });

在您的 php 文件中检查并验证输入。如果没问题,则回显 0,否则回显 1 - 仅作为示例,以保持此处非常简单。

于 2012-08-13T11:21:13.320 回答
1

请务必使用您使用的最新版本的库尝试代码。旧库和旧插件可能包含大量错误并且不兼容。

于 2012-08-13T11:12:44.997 回答
1

好吧,首先:我自己从未使用过此功能,因此我不确定您提供的方法是否有效。但是,这不是 jQuery 文档中描述的方式。正如@Tim 建议的那样,首先切换到最新的 jQuery 版本,然后按照本文档页面中的说明继续尝试:

http://docs.jquery.com/Plugins/Validation#source

话虽如此,您仍然需要添加服务器端验证,所以我将继续使用 ajax 和服务器端验证(来自 php 文件或类似文件)。然后,您将拥有用于服务器端验证和客户端验证的相同方法。但是,如果您不使用数据库层,则服务器端验证可能会过度使用它。

于 2012-08-13T11:13:29.103 回答