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 UI的Dialog无法提交问题的解决方法
Jan 11 Javascript
在js(jquery)中获得文本框焦点和失去焦点的方法
Dec 04 Javascript
jQuery Ajax调用WCF服务详细教程
Mar 31 Javascript
JavaScript实现随机替换图片的方法
Apr 16 Javascript
使用AngularJS创建单页应用的编程指引
Jun 19 Javascript
JS实现的仿淘宝交易倒计时效果
Nov 27 Javascript
JavaScript表单验证实例之验证表单项是否为空
Jan 10 Javascript
Angularjs2不同组件间的通信实例代码
May 06 Javascript
Vue自定义事件(详解)
Aug 19 Javascript
详解如何在react中搭建d3力导向图
Jan 12 Javascript
详解javascript void(0)
Jul 13 Javascript
Vue获取微博授权URL代码实例
Nov 04 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实现MVC开发得最简单的方法――模型
2007/04/10 PHP
php Undefined index和Undefined variable的解决方法
2008/03/27 PHP
PHP常用函数总结(180多个)
2016/12/25 PHP
TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法小结
2020/02/10 PHP
Js数组的操作push,pop,shift,unshift等方法详细介绍
2012/12/28 Javascript
基于IE下ul li 互相嵌套时的bug,排查,解决过程以及心得介绍
2013/05/07 Javascript
JavaScript中for..in循环陷阱介绍
2013/11/12 Javascript
Ajax请求在数据量大的时候出现超时的解决方法
2014/02/27 Javascript
angularJS中$apply()方法详解
2015/01/07 Javascript
实现非常简单的js双向数据绑定
2015/11/06 Javascript
令按钮悬浮在(手机)页面底部的实现方法
2017/05/02 Javascript
Angular如何由模板生成DOM树的方法
2019/12/23 Javascript
vue实现购物车功能(商品分类)
2020/04/20 Javascript
Nuxt默认模板、默认布局和自定义错误页面的实现
2020/05/11 Javascript
Python实现将绝对URL替换成相对URL的方法
2015/06/28 Python
Python简单实现两个任意字符串乘积的方法示例
2018/04/12 Python
PyCharm代码整体缩进,反向缩进的方法
2018/06/25 Python
钉钉群自定义机器人消息Python封装的实例
2019/02/20 Python
用uWSGI和Nginx部署Flask项目的方法示例
2019/05/05 Python
Python中遍历列表的方法总结
2019/06/27 Python
pytorch 预训练层的使用方法
2019/08/20 Python
python列表推导式操作解析
2019/11/26 Python
python-web根据元素属性进行定位的方法
2019/12/13 Python
Django实现whoosh搜索引擎使用jieba分词
2020/04/08 Python
python中逻辑与或(and、or)和按位与或异或(&amp;、|、^)区别
2020/08/05 Python
PyCharm2020.1.2社区版安装,配置及使用教程详解(Windows)
2020/08/07 Python
python的launcher用法知识点总结
2020/08/07 Python
工程专业毕业生自荐信范文
2013/12/25 职场文书
领导的自我鉴定
2013/12/28 职场文书
竞选班长的演讲稿
2014/04/24 职场文书
授权委托书
2014/07/31 职场文书
践行党的群众路线心得体会
2014/11/05 职场文书
大学生个人学年总结
2015/02/15 职场文书
考试没考好检讨书
2015/05/06 职场文书
vue 把二维或多维数组转一维数组
2022/04/24 Vue.js
类和原型的设计模式之复制与委托差异
2022/07/07 Javascript