首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jquery验证插件

jquery验证插件
EN

Stack Overflow用户
提问于 2009-12-05 08:57:02
回答 2查看 1.3K关注 0票数 0

有人使用此jquery插件进行表单验证?

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

我想不出怎么用它。在如何命名html表单元素以使其与validate()方法一起工作的文档中,它没有任何说明。

问题nr 2,服务器端使用什么php类验证?

编辑:为什么这个不起作用:

代码语言:javascript
复制
$("#register_box_form").validate({
    rules: {
        name: {
            required: true,
            minlength: 3
        }

        email: {
            required: true,
            minlength: 3,
            email: true
        }
    }
});
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-12-06 14:26:30

在此代码中,类属性‘<input type="text" id="email" name="email" class="required email" />’和'email‘的值与文档就绪函数的validate方法中定义的规则相同。这意味着class="required email"等于,

代码语言:javascript
复制
email: {
          required: true,
          email: true
        }

在上面的例子中。我将告诉您包含jquery验证所需的步骤。(你可能已经知道每一步)为了使用jquery验证,首先你必须包括主jquery库js文件和jquery验证插件js文件。然后在ready function的文档中,您必须将validate绑定到所需的表单(如上面的post示例中所述)。您可以在该验证函数中声明验证规则,也可以将其声明为相关输入元素的class属性值,如上所述。有时,当我为输入元素的id属性和name属性使用不同的值时,我会遇到问题。我不知道这是什么原因。因此,尝试为id和name属性提供相同的值,并检查验证是否仍然不起作用。

您可以使用已经包含的验证规则,如电子邮件,网址,数字等,还有一个称为“远程”的规则,可以用来发送ajax请求和在服务器端进行验证。除此之外,您还可以根据需要定义自定义规则。例如,我使用以下代码添加自定义验证规则,以确保密码符合正确的密码策略。

代码语言:javascript
复制
$.validator.addMethod("passwd_policy", function( value, element, param ) {
        return this.optional(element)
            || (value.length >= 8
                && /.[!,@,#,$,%,^,&,*,?,_,~]/.test(value) 
                && /[0-9]/.test(value)
                && /[a-z]/.test(value)
                && /[A-Z]/.test(value));
    },"Your password must be at least 8 characters long, <br/>contain at least one number, <br/>"
      +" at least one special character (!,@,#,$,%,^,&,*,?,_ ,~),<br/> at least one uppercase"
      +" character  <br/>and at least one lowercase character.");

您可以添加此自定义验证方法来验证字段,就像使用内置方法一样。这就像

代码语言:javascript
复制
   "txt_passwd": {
        passwd_policy: true
    },
票数 1
EN

Stack Overflow用户

发布于 2009-12-05 09:12:31

您可以为表单中的字段指定规则。它们是键/值对,其中键是字段的名称。

例如,包含字段名称和电子邮件的表单(来自http://docs.jquery.com/Plugins/Validation/validate#options的文档)

代码语言:javascript
复制
$(".selector").validate({
   rules: {
     // simple rule, converted to {required:true}
     name: "required",
     // compound rule
     email: {
       required: true,
       email: true
     }
   }
})

你可以使用php部分的Zend Framework。它有一些JQuery integration,虽然不是用于验证插件(还没有?)。

编辑:在您的示例中,规则文本的两个元素之间缺少逗号。

代码语言:javascript
复制
<html>
  <head>
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.js"></script>
    <script type="text/javascript">
      $(document).ready(function() {
        $("#register_box_form").validate( {
          rules: {
            name: {
              required: true,
              minlength: 3
            },
            email: {
              required: true,
              email: true
            }
          }
        });
      });
    </script>
  </head>
  <body>
    <form method="post" action="?" id="register_box_form">
      <div>
        <input type="text" name="name" /><br />  
        <input type="text" name="email" /><br />
        <input type="submit" />
      </div>
    </form>
  </body>
</html>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1850647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档