jquery中dom操作和事件的实例学习-表单验证


Posted in Javascript onNovember 30, 2011

很显然,这样做能提升更好的用户体验。
html代码:

<form method="post" action=""> 
<div class="int"> 
<label for="username">用户名:</label> 
<input type="text" id="username" class="required"/> 
</div></form>

jquery代码:
<script type="text/javascript"> 
$(function(){ 
$('form :input').blur(function(){ 
var $parent=$(this).parent(); 
$parent.find(".formtips").remove(); 
if($(this).is('#username')) { 
if(this.value==""||this.value.length<6){ 
var msg="<span class='formtips error'>请输入至少6位用户名</span>"; 
$(msg).appendTo($parent); 
}else{ 
var msg="<span class='formtips success'>输入正确</span>"; 
$(msg).appendTo($parent); 
} 
} 
}).keyup(function(){ 
$(this).triggerHandler("blur"); 
}).focus(function(){ 
$(this).triggerHandler("blur"); 
}) 
}) 
</script>

好,现在来详细分析下里面的jquery语句。
先看dom操作的语句
$('form:input') 这个是用来查找form元素下所以的<input>,<textarea>,<select>,<button>元素。
类似的还有$(':text'),$(':checkbox')等。反正只要明白只有在表单内,通过表单选择器都能得到相应的元素。
parent()是找到匹配元素的父节点。find()是来搜索与表达式匹配的元素。remove()是用来删除元素。
is()是用一个表达式来检查当前选择器的元素集合,如果存在至少一个匹配元素,则返回 true。
appendTo()是把一个元素添加到令一个元素中
triggerHandler()这一个特点方法会触发元素上的特定事件。
再看事件的语句。
keyup()是按键向上时触发。
理解每个方法后应该不难理解上面的代码
可能对于这句代码有疑问。 $parent.find(".formtips").remove();
这句是为了保证后面提示的元素只有一个。如果没有这句,就会一直添加提示的元素。
Javascript 相关文章推荐
利用jQuery操作对象数组的实现代码
Apr 27 Javascript
JS延迟加载加快页面打开速度示例代码
Dec 30 Javascript
js返回上一页并刷新的多种实现方法
Feb 26 Javascript
node.js中的http.createClient方法使用说明
Dec 15 Javascript
JS实现图片的不间断连续滚动的简单实例
Jun 03 Javascript
基于JS实现无缝滚动思路及代码分享
Jun 07 Javascript
深入理解选择框脚本[推荐]
Dec 13 Javascript
js实现移动端编辑添加地址【模仿京东】
Apr 28 Javascript
jQuery ajax调用webservice注意事项
Oct 08 jQuery
HTML+JavaScript实现扫雷小游戏
Sep 30 Javascript
JS数组方法reverse()用法实例分析
Jan 18 Javascript
JSON 入门教程基础篇 json入门学习笔记
Sep 22 Javascript
javascript开发随笔二 动态加载js和文件
Nov 25 #Javascript
javascript开发随笔一 preventDefault的必要
Nov 25 #Javascript
基于jquery的拖动布局插件
Nov 25 #Javascript
jQuery Jcrop插件实现图片选取功能
Nov 23 #Javascript
JQUERY1.6 使用方法四 检测浏览器
Nov 23 #Javascript
JQuery1.6 使用方法三
Nov 23 #Javascript
jQuery1.6 使用方法二
Nov 23 #Javascript
You might like
PHP快速排序quicksort实例详解
2016/09/28 PHP
基于thinkPHP类的插入数据库操作功能示例
2017/01/06 PHP
Yii框架弹出窗口组件CJuiDialog用法分析
2017/01/07 PHP
Laravel框架中Blade模板的用法示例
2017/08/30 PHP
javascript动态添加、修改、删除对象的属性与方法详解
2014/01/27 Javascript
jquery1.10给新增元素绑定事件的方法
2014/03/06 Javascript
javascript禁止访客复制网页内容的实现代码
2015/08/05 Javascript
深入理解JS addLoadEvent函数
2016/05/20 Javascript
详解利用 Express 托管静态文件的方法
2017/09/18 Javascript
vue-cli脚手架config目录下index.js配置文件的方法
2018/03/13 Javascript
vue移动端实现下拉刷新
2018/04/22 Javascript
vue和better-scroll实现列表左右联动效果详解
2019/04/29 Javascript
vue-cli3+ts+webpack实现多入口多出口功能
2019/05/30 Javascript
layui实现数据分页功能
2019/07/27 Javascript
关于layui的下拉搜索框异步加载数据的解决方法
2019/09/28 Javascript
vue实现配置全局访问路径头(axios)
2019/11/01 Javascript
微信内置开发 iOS修改键盘换行为搜索的解决方案
2019/11/06 Javascript
Python 调用VC++的动态链接库(DLL)
2008/09/06 Python
Python 文件读写操作实例详解
2014/03/12 Python
Python使用xlrd读取Excel格式文件的方法
2015/03/10 Python
Python中的Django基本命令实例详解
2018/07/15 Python
widows下安装pycurl并利用pycurl请求https地址的方法
2018/10/15 Python
python使用多线程编写tcp客户端程序
2019/09/02 Python
谷歌浏览器小字体处理方案即12px以下字体
2013/12/17 HTML / CSS
H5离线存储Manifest原理及使用
2020/04/28 HTML / CSS
四方通行旅游网:台湾订房、出国旅游
2017/09/20 全球购物
2014年商场超市庆元旦活动方案
2014/02/14 职场文书
社区义诊活动总结
2014/04/30 职场文书
数学系毕业生求职信
2014/05/29 职场文书
任命书模板
2014/06/04 职场文书
2014年安全管理工作总结
2014/12/01 职场文书
2015年感恩节演讲稿(优选篇)
2015/03/20 职场文书
小学感恩节活动总结
2015/03/24 职场文书
2015年推普周活动方案
2015/05/06 职场文书
大学生党课心得体会
2016/01/07 职场文书
MySQL数字类型自增的坑
2021/05/07 MySQL