JQuery中内容操作函数、validation表单校验
JQuery:
内容体拼接(可以直接拼接元素节点和内容节点)
JQuery实现:
方案1:A.append(B); == B.appendTo(A);A的后面拼接B
方案2: A.prepend(B); == B.prependTo(A);A文本的最前面插入B
text()与html()比较:
1.相同点:
都可以设置或获取内容
2.不同点:
获取时,html()获取的是所有内容体:标签+文本
text()获取的只是文本
设置时,如果设置的内容有html()标签
html()设置的内容可以被浏览器当做标签解析
text()设置的所有内容都被当成了普通文本
3.二者用于场景
JS一般使用html()函数
类似于text()的实现一般用于xml解析
val():对表单中的value值进行操作
事件简化:hover()
d1.hover(
function(){t1.val("第一个是移入事件")},
function(){t1.val("第二个是移出事件")}
);
validation是对表单校验的封装,是一个第三方的JQuery的插件,使用的时候先导入JQuery包(JQuery是一个插座)
表单校验中涉及两个要素:规则和提示信息
&(function(){
//定位表单,调用方法validate()进行校验
$("#id").validate({
//规则,注意大括号和分号的使用
rules:{
//通过name属性值定位标签节点
username:{
//属性:属性值, 注意逗号,用逗号分隔,结尾处不用
required:true, //必填
rangelength:[6,10] //字符长度
}
},
//提示信息
messages:{
username:{
required:"这是必填项",
rangelength:"长度必须在6~10个字符之间"
}
}
});
});
其它校验器:
email:{
email:true //必须符合邮箱格式
},
birthday:{
date:true, //必须符合日期格式
number:true, //必须是数字
min:1000, //最小值
range:[6,16], //必须是在这之间的数字
},
pwd:{
required:true
},
repwd:{
required:true,
equalTo:"input[name='pwd']" //值必须和名字为pwd的input标签的value值相等
}
自定义校验类型:
1.编写校验类型
$.validator.addMethod(参数1,参数2,参数3);
参数1:该校验类型的名字
参数2:该校验类型的具体实现
参数3:错误提示
2.参数2详解,参数2返回一个boolean的值,返回false执行错误提示(参数3)
function(参数1,参数2,参数3)
参数1 ----- 客户录入的值
参数2 ----- 输入项对应的对象
参数3 ----- 使用校验类型时,校验类型的取值
$.validator.addMethod("my",function(v,e,p){
//根据客户录入的数据进行校验,判断是不是合法的,如果合法,返回 true,否则返回 false
//判断 v 中是不是有敏感词(pujing)
if(v.indexOf("pujing") != -1){//有pujing
return false;
}
return true;
},"不能出现政治敏感词");
$(function(){
$("#f1").validate({
rules:{
username:{
my:true
}
}
});
});
validation插件设置错误信息时的原理:(查看元素的方法:在网页中查看)
内置的错误提示,格式:
<label id="" class="error" for="对应输入项的name值">提示信息</lable>
看见内置的格式之后通过格式定位标签元素改变其属性等,在css代码中修饰元素,在js中动态处理元素
通过标签名得到元素: lable (标签名选择器)
通过class名得到元素: .error (class选择器)
拓展:
怎么让错误提示换行
错误提示是默认生成的,紧跟在相应的input后面
在相应的位置,自己添加标签 <label class="error" for="name值"></lable>自己添加之后系统不会自己添加
内置了一些错误提示,使用时,不需要编写messages部分即可得到默认的
国际化:
相同软件显示不同的语言,内置语言包实现,dist文件中
<script type="text/javascript" src="../js/messages_es_PE.js" ></script>
可以自己在html中提供校验:
1.在script中得到表单并提供校验方法,没有具体实现,自己在html中通过通过class提供具体的校验器,要改提示信息同样通过选择器定位lable标签
<input type="text" name="pwd" class="required number" />
2.直接在要校验的标准中内置validation的属性和属性值:
<input type="text" name="username" required="true" minlength="2" maxlength="8" />
3.因为内置属性不是html自己的属性,所以提供自定义标签标记
<input type="text" name="username" data-rule-required="true" data-rule-minlength="2" data-rule-maxlength="8" />
JQuery中内容操作函数、validation表单校验的更多相关文章
- jeecg中vaildfrom的复杂的表单校验
简介 jeecg生成的页面都是使用validfrom组件来确保数据的完整性和准确性. 凡要验证格式的元素均需绑定datatype属性,datatype可选值内置有10类,用来指定不同的验证格式. 如果 ...
- jquery中ajax序列化提交form表单的几种方法。
一,ajax主流的方法 $.ajax({ type: 'post', url: 'your url', data: $("form").serialize(), success: ...
- Spring Validation 表单校验
最近开发一个项目,发现字段校验比较多,同事提出使用Validation校验能更方便一些,今天记录下来,供以后参考: 一.在pom.xml中添加依赖: <dependency> <gr ...
- 应用二:Vue之ElementUI Form表单校验
(注:本文适用于有一定Vue基础或开发经验的读者,文章就知识点的讲解不一定全面,但却是开发过程中很实用的) 表单校验是前端开发过程中最常用到的功能之一,根据个人的工作经验总结在此对表单校验功能的基 ...
- 【JAVAWEB学习笔记】28_jqueryAjax:json数据结构、jquery的ajax操作和表单校验插件
Ajax-jqueryAjax 今天内容: 1.json数据结构(重点) 2.jquery的ajax操作(重点) 3.jquery的插件使用 一.json数据结构 1.什么是json JSON(J ...
- jQuery学习之:Validation表单验证插件
http://polaris.blog.51cto.com/1146394/258781/ 最近由于公司决定使用AJAX + Struts2来重构项目,让我仔细研究一下这两个,然后集中给同事讲讲,让每 ...
- RxAndroid中observable的基本使用和表单校验操作
RxAndroid 响应式编程 类似于监听-观察者模式 在观察者模式中,你的对象需要实现 RxJava 中的两个关键接口:Observable 和 Observer.当 Observable 的状态改 ...
- 使用jQuery的validation插件实现表单校验
前端表单校验: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
- 利用jquery.validate以及bootstrap的tooltip开发气泡式的表单校验组件
表单校验是页面开发中非常常见的一类需求,相信每个前端开发人员都有这方面的经验.网上有很多成熟的表单校验框架,虽然按照它们默认的设计,用起来没有多大的问题,但是在实际工作中,表单校验有可能有比较复杂的个 ...
随机推荐
- upc组队赛6 Progressive Scramble【模拟】
Progressive Scramble 题目描述 You are a member of a naive spy agency. For secure communication,members o ...
- upc组队赛5 Hunter’s Apprentice 【判断多边形边界曲线顺逆时针】
Hunter's Apprentice 题目描述 When you were five years old, you watched in horror as a spiked devil murde ...
- Rust <3>:控制流
if.loop.for.while: fn main() { if 3 > 4 { println!{">"}; } else { println!{"< ...
- qrcode-使用
安装 composer require endroid/qrcode namespace App\Http\Controllers\Admin; use Endroid\QrCode\QrCode; ...
- Spingboot整合Redis,用注解(@Cacheable、@CacheEvict、@CachePut、@Caching)管理缓存
背景:项目从头开始,需结合Springboot和Redis 需求:用注解管理缓存 方法: 一.用Redis取代Springboot原有缓存 1.pom引入依赖 2.applicatio ...
- MVC,MVP 和 MVVM 的图示(转载)
MVC,MVP 和 MVVM 的图示 作者: 阮一峰 日期: 2015年2月 1日 复杂的软件必须有清晰合理的架构,否则无法开发和维护. MVC(Model-View-Controller)是最常 ...
- JPA单向和双向关系
单向关系 @JoinColumn 双向关系 @OneToMany @ManyToMany mappedBy
- mysql 日期和时间戳互换
1.日期转时间戳 UNIX_TIMESTAMP('2019-06-25 12:30:00') 2.时间戳转日期 FROM_UNIXTIME(1545711900,'%Y-%m-%d') 3. DAT ...
- Zookeeper-技术专区-运作流程分析介绍
Zookeeper的启动流程 Zookeeper的主类是QuorumPeerMain,启动时读取zoo.cfg配置文件,如果没有配置server列表,则单机模式启动,否则按集群模式启动,这里只分析集群 ...
- 在egg中配置cors
在egg中配置 cors(跨域) 第一步,安装 egg-cors npm i egg-cors --save 第二步,配置 cors 在config/plugin.js文件下添加: exports.c ...