前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >jQuery Validate插件实现表单验证

jQuery Validate插件实现表单验证

作者头像
别团等shy哥发育
发布于 2023-02-25 09:22:51
发布于 2023-02-25 09:22:51
1.5K00
代码可运行
举报
运行总次数:0
代码可运行

jQu​​ery Validate

前言

jQuery Validate插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供可选的定制选项,以满足应用程序各种需求。该插件捆绑了一套有用的验证方法,包括URL和电子邮件验证,同时提供了一个使用编写用户自定义方法的API。所有的捆绑方法替换使用英语作为错误信息,并已翻译成其他37种语言。

引入js库

由于每个人放置的位置不一样,所以相对路径也会不一样,自己改下路径

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script src="/ssm_test/commons/jslib/hplus/js/jquery.min.js"></script>
<script
        src="/ssm_test/commons/jslib/hplus/js/plugins/validate/jquery.validate.min.js"></script>
<script
        src="/ssm_test/commons/jslib/hplus/js/plugins/validate/messages_zh.min.js"></script>

默认验证规则

规则

描述

required

必须输入的字段

remote:“check.php”

使用ajax方法调用check.php验证输入值

email:true

必须输入正确的电子邮件

url:true

必须输入正确的网址

date:true

必须输入正确的日期格式。日期检验ie6出错,慎用

dateISO:true

必须输入正确格式的日期(ISO),例如:2009-06-23,1998/01.22.只验证格式,不验证有效性

number:true

必须输入合法的数字(负数、小数)

digits:true

必须输入整数

creditcard

必须输入合法的信用卡号

equalTo:"#field"

输入值必须和#field相同

accept:

输入拥有合法后缀名的字符串(上传文件的后缀)

maxlength:5

输入长度最多是5的字符串(汉字算一个字符)

minlength:5

输入长度最小是5的字符串(汉字算一个字符)

rangelength:[5,10]

输入长度必须介于5和10之间的字符串

range:[5,10]

输入值必须介于5和10之间

max:5

输入值不能大于5

min:10

输入值不能小于10

Demo

表单:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<form  method="post" class="form-horizontal" id="addform"  enctype="multipart/form-data">
                            <div class="form-group">
                                <label class="col-sm-3 control-label">商品编码</label>
                                <div class="col-sm-8 controls">
                                    <input type="text" value="" class="form-control" name="code"
                                           id="product_code" />
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-3 control-label">商品名称</label>
                                <div class="col-sm-8 controls">
                                    <input type="text" value="" class="form-control" name="name"
                                           id="product_name" />
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-3 control-label">商品类型</label>
                                <div class="col-sm-8 controls">
                                    <select class="form-control productTypeId" name="type.id" id="product_type">
                                    </select>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-3 control-label">商品品牌</label>
                                <div class="col-sm-8 controls">
                                    <input type="text" value="" class="form-control" name="brand" id="product_brand"/>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-3 control-label">商品数量</label>
                                <div class="col-sm-8 controls">
                                    <input type="text"  class="form-control" name="num" id="product_num"/>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-3 control-label">商品价格</label>
                                <div class="col-sm-8 controls">
                                    <input type="text"  class="form-control" name="price" id="product_price"/>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-3 control-label">商品介绍</label>
                                <div class="col-sm-8 controls">
                                    <input type="text" value="" class="form-control" name="intro" id="product_intro"/>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-3 control-label">商品状态</label>
                                <div class="col-sm-8 controls">
                                    <select class="form-control productTypeId" name="status" id="product_status">
                                        <option value="1">在售</option>
                                        <option value="0">下架</option>
                                    </select>
                                </div>
                            </div>
                            <div class="form-group">
                                <label for="file" class="col-sm-3 control-label">商品图片</label>
                                <div class="col-sm-8 controls">
                                    <input type="file" class="form-control" name="file" id="file"/>
                                </div>
                            </div>
                            <div class="control-group">
                                <div class="controls">
                                    <input type="submit" class="btn btn-gmtx-define1 center-block">
                                        添加
                                    </input>
                                </div>
                            </div>
                        </form>

js部分:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$("#addform").validate({
                rules : {
                    code:{
                        required : true,
                        maxlength: 50
                    },
                    name:{
                        required : true,
                        maxlength: 50
                    },
                    "type.id": {
                        required : true,
                    },
                    brand:{
                        required:true,
                    },
                    num:{
                        required:true,
                    },
                    price:{
                        required:true,
                    },
                    intro:{
                        required:true,
                    },
                    status:{
                        required:true,
                    }
                },
                messages : {
                    code : {
                        required : "请输入商品编码",
                        maxlength: "参数名过长"
                    },
                    name : {
                        required : "请输入商品名称",
                        maxlength: "参数名过长"
                    },
                    "type.id": {
                        required : "请选择商品类型"
                    },
                    brand:{
                        required:"请输入商品品牌"
                    },
                    num:{
                        required:"请输入商品数量"
                    },
                    price:{
                        required:"请输入商品价格"
                    },
                    intro:{
                        required:"请输入商品介绍"
                    },
                    status: {
                        required:"请选择商品状态"
                    }
                },
                submitHandler : function() {
                   	//这里写验证成功的逻辑
                }
            });

测试

下面是一个表单

我们不输入任何值,直接点击提交,可以看到并没有执行submit,而是触发了validate

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-01-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
体验 Mysql 操作 JSON 文档
新版 Mysql 中加入了对 JSON Document 的支持,可以创建 JSON 类型的字段,并有一套函数支持对JSON的查询、修改等操作,下面就实际体验一下 创建带有 JSON 字段的表 比如一个‘文章’表,字段包括 id、标题 title、标签 tags 一篇文章会有多个标签,tags 就可以设为 JSON 类型 建表语句如下: CREATE TABLE `article` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `title
dys
2018/04/03
2.3K0
体验 Mysql 操作 JSON 文档
一文说透MySQL JSON数据类型
JSON 数据类型是 MySQL 5.7.8 开始支持的。在此之前,只能通过字符类型(CHAR,VARCHAR 或 TEXT )来保存 JSON 文档。
星哥玩云
2022/06/06
5.2K0
一文说透MySQL JSON数据类型
json查询解析在mysql5.7+有多方便?
在mysql5.7之前我们查询解析json需要先查出json字符串,再通过程序进行解析。(如果你使用的navicat版本太低的话,看不到json类型的) 现在mysql5.7引入了json类型格式,大大方便了我们的查询解析。 MySQL官方列出json相关的函数,完整列表如下: 分类 函数 描述 创建json json_array 创建json数组 json_object 创建json对象 json_quote 将json转成json字符串类型 查询json json_contains 判断是否包含某个
友儿
2022/09/11
2.5K0
用 MySQL 实现 JSON 格式的数据存储
在绝大多数业务场景中,分布式数据库并非必需。事实上,约80%的应用程序都可以在单机环境下高效运行。
贺春旸的技术博客
2024/08/05
2410
用 MySQL 实现 JSON 格式的数据存储
MySQL8.0 JSON函数之搜索JSON值(五)
之前的几篇文章介绍了JSON数据类型,相信大家已经对JSON有了一定的了解,上面一篇文章介绍了《MySQL8.0 JSON函数之创建与返回JSON属性(四)》JSON函数的使用;本节中的函数对JSON值执行搜索或比较操作,以从中提取数据;
SEian.G
2021/07/07
7.8K0
MySQL中的JSON
JSON类型的加入模糊了关系型数据库与NoSQL之间的界限,给日常开发也带来了很大的便利。
valineliu
2022/08/28
10.3K1
MySQL中的JSON
MySQL 支持JSON字段的基本操作、相关函数及索引使用如何索引JSON字段
Mysql5.7版本以后新增的功能,Mysql提供了一个原生的Json类型,Json值将不再以字符串的形式存储,而是采用一种允许快速读取文本元素(document elements)的内部二进制(internal binary)格式,并提供了不少内置函数,通过计算列,甚至还可以直接索引json中的数据。
chenchenchen
2022/03/09
30.1K0
MySQL5.7对json的操作
Mysql中需要存储用户的相关证件信息,即存储图片信息, 数量不定。这时候通常采用的做法:
有一只柴犬
2024/01/25
2290
MySQL5.7对json的操作
MySQL的JSON数据类型介绍以及JSON的解析查询
MySQL从5.7后引入了json数据类型以及json函数,可以有效的访问json格式的数据。json数据类型相对于字符串,具有以下优点:
Java技术债务
2022/08/09
11.7K0
MySQL的JSON数据类型介绍以及JSON的解析查询
mysql5.7强势支持原生json格式!!全面掌握
mysql一直是如此优秀,但是随着最近一些nosql的强劲发展,甚为关系型数据库的mysql,也不例外在某些层面稍有逊色。其中,是否支持json格式是最常被用来比较的。
后端技术探索
2018/08/09
8170
MySQL 5.7 JSON 数据类型使用总结
从MySQL5.7.8开始,MySQL支持原生的JSON数据类型。MySQL 支持RFC 7159定义的全部json 数据类型,具体的包含四种基本类型(strings, numbers, booleans, null)和两种结构化类型(objects and arrays)。
Tinywan
2024/02/22
6320
MySQL 5.7 JSON 数据类型使用总结
mysql中保存并操作json对象
"At the end of the day, we can endure much more than we think we can.—— Frida Kahlo"
小闫同学啊
2020/03/25
14.4K0
mysql支持原生json使用说明
MySQL在5.7.8开始对json原生支持,本文将对MySQL中json类型的用法简单说明,希望对你有用。
我的小碗汤
2018/08/22
3.5K0
mysql支持原生json使用说明
【MySQL 系列】MySQL 函数篇
函数是指一段可以直接被另一段程序调用的程序或代码。 也就意味着,这一段程序或代码在 MySQL 中已经给我们提供了,我们要做的就是在合适的业务场景调用对应的函数完成对应的业务需求即可。
栗筝i
2024/03/19
3700
MySQL 5.7新特性之五
本系列文章基于 5.7.12 版本讲述MySQL的新特性。从安装,文件结构,SQL ,优化 ,运维层面 复制,GITD等几个方面展开介绍 5.7 的新特性和功能。同时也建议大家跟踪官方blog和官方文档,以尽快知悉其新的变化。本文将重点介绍新版本对JSON格式的支持。
用户1278550
2018/08/09
4930
MySQL 5.7新特性| Json Column 和 Generated Column (中)
这个用法主要是处理 JSON 字段中值数组型的数据,主要是追加值,不是标准数组类型的,这个函数会自动转化为数组形式,把之前的值作为数组的第一个元素然后进行追加,有批量追加方法:
wubx
2019/02/27
2.1K0
mysql5.7 JSON类型体验
前言:为了兼容传统的sql语句,mysql5.7支持原生的json格式的字符串,即将关系型数据库和文档型集于一身。
王念博客
2019/07/24
1.3K0
嗦一嗦 MySQL 8.0的新特性(一)
导读 MySQL8.0 GA版本发布了,展现了众多新特性,本系列译文将整理为3篇,为大家介绍升级的部分新特性。 本文为第1篇,重点为大家介绍SQL、JSON上展现的新特性,其他特性的介绍将陆续更新,敬请关注。
wubx
2019/02/27
9700
oracle mysql5.7 Json函数
oracle mysql 5.7.8 之后增加了对json数据格式的函数处理,可更加灵活的在数据库中操作json数据,如可变属性、自定义表单等等都使用使用该方式解决。
兜兜毛毛
2019/10/23
2.5K0
oracle mysql5.7  Json函数
MySQL5.7特性:JSON数据类型学习
MySQL5.7的发行声明中,官方称之为里程碑式的版本,除了运行速度大幅度提升之外,还添加了之前版本没有的功能,如本文所述的原生JSON数据类型功能。 在此版本之前,MySQL所有的JSON数据类型,全部是使用text等文本类型来实现的,数据的处理只能在应用代码级来实现,十分不方便。
ITer.996
2019/08/28
7.1K0
相关推荐
体验 Mysql 操作 JSON 文档
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档