jQuery 事件&表单验证&属性操作
2018-09-09 11:17
141 查看
版权声明:转载请注明原文地址 https://blog.csdn.net/qq_41333582/article/details/82556766
jquery事件
事件函数列表:
比原生 js 省略了 ‘on’
这里涉及到一些事件冒泡的内容, 主要原理:
我们点击子元素的时候,子元素会将事件传递到父元素去,进而触发父元素的事件.
blur() 元素失去焦点 focus() 元素获得焦点 click() 鼠标单击 mouseover() 鼠标进入(进入子元素也触发) mouseout() 鼠标离开(离开子元素也触发) mouseenter() 鼠标进入(进入子元素不触发) mouseleave() 鼠标离开(离开子元素不触发) hover() 同时为mouseenter和mouseleave事件指定处理函数 ready() DOM加载完成 submit() 用户递交表单
例如:
<head> <style> .box { width: 200px; height: 200px; background-color: pink; } .son { width: 100px; height: 100px; background-color: red; } </style> <script src="./jquery-1.12.4.min.js"></script> <script> $(function(){ var $input = $('#input1') // 默认,一上来就选中 $input.focus() // 取消焦点时调用的方法 $input.blur(function(){ // alert('haha') }) var $div1 = $('.box') // mouseover和mouseout的使用 // $div1.mouseover(function(){ // $div1.stop().animate({'margin-top':'60px'}) // }) // $div1.mouseout(function(){ // $div1.stop().animate({'margin-top':'0px'}) // }) // mouseenter和mouseleave的使用 // $div1.mouseenter(function(){ // $div1.animate({'margin-top':'100px'}) // }) // $div1.mouseleave(function(){ // $div1.animate({'margin-top':'0px'}) // }) // hover的使用 $div1.hover(function(){ $div1.animate({'margin-top':'100px'}) },function(){ $div1.animate({'margin':'0px'}) }) }) </script> </head> <body> <input type="text" id="input1"> <div class="box"> <div class="son"></div> </div> </body>
再例如:
<head> <script src="./jquery-1.12.4.min.js"></script> <script> $(function(){ var $form = $('#form1') var $user = $('#name') $form.submit(function(){ alert($user.val()) // 阻止提交事件 return false }) }) </script> </head> <body> <form action="" id="form1"> <p> <label for="name">姓名:</label> <input type="text" id="name"> </p> <p> <label for="pswd">密码:</label> <input type="password" id="pswd"> </p> <input type="submit"> </form> </body>
表单验证
正则表达式
能让计算机读懂的字符串匹配规则。
正则表达式的写法
使用方法: // 定义一个正则表达式(两种方法) var re = new RegExp('规则', '可选参数'); var re = /规则/参数; // 测试正则表达式: var result = re.test(要测试的字符串) // result ---> true // result ---> false
规则中的字符
普通字符匹配
规则使用方式: /a/ 匹配字符 ‘a’ /a,b/ 匹配字符 ‘a,b’
转义字符匹配
规则使用方式: \d 匹配一个数字,即0-9 \D 匹配一个非数字,即除了0-9 \w 匹配一个单词字符(字母、数字、下划线) \W 匹配任何非单词字符。单词字符包括:a-z、A-Z、0-9,以及下划线。 \s 匹配一个空白符 \S 匹配一个非空白符 . 匹配一个任意字符
例如:
var sTr01 = '123456asdf'; var re01 = /\d+/; //匹配纯数字字符串 var re02 = /^\d+$/; alert(re01.test(sTr01)); //弹出true alert(re02.test(sTr01)); //弹出false
量词
对左边的匹配字符定义个数
规则使用方式: ? 出现零次或一次(最多出现一次) + 出现一次或多次(至少出现一次) * 出现零次或多次(任意次) {n} 出现n次 {n,m} 出现n到m次 {n,} 至少出现n次
任意一个或者范围
[abc123] : 匹配‘abc123’中的任意一个字符 [a-z0-9] : 匹配a到z或者0到9中的任意一个字符
限制开头结尾
^ 以紧挨的元素开头 $ 以紧挨的元素结尾
修饰参数
g: global: 全文搜索,默认搜索到第一个结果接停止 i: ingore case: 忽略大小写,默认大小写敏感 /规则/i
常用函数 test
使用方法: 正则.test(字符串) // 匹配成功,就返回真,否则就返回假
正则默认规则
匹配成功就结束,不会继续匹配,区分大小写
常用正则规则
// 用户名验证:(数字字母或下划线6到20位) var reUser = /^\w{6,20}$/; // 邮箱验证: var reMail = /^[a-z0-9][\w\.\-]*@[a-z0-9\-]+(\.[a-z]{2,5}){1,2}$/i; // 密码验证: var rePass = /^[\w!@#$%^&*]{6,20}$/; // 手机号码验证: var rePhone = /^1[3456789]\d{9}$/;
例如:
<script src="./jquery-1.12.4.min.js"></script> <script> // var str = 'helloA world' // var reg = /a/i var str = 'a123ab' var reg = /^\d/ var result = reg.test(str) alert(result) </script>
jquery 属性操作
html ( )
使用: html( ) 取出元素文本 或设置元素内容
作用类似于 innerHTML( )
使用方式: // 取出html内容 var $htm = $('#div1').html(); // 设置html内容 $('#div1').html('<span>添加文字</span>');
val( )
val( ) 方法返回或设置被选元素的值。
元素的值是通过 value 属性设置的。该方法大多用于 input 元素。
如果该方法未设置参数,则返回被选元素的当前值。
使用方式: // 取出html内容 var val = $("input").val(); // 设置html内容 $("input").val("Hello World");
prop( ) / attr( )
attributes : 属性
取出或设置某个属性的值
这里的属性是指标签除 css 样式以外的其他属性
使用方式: // 取出图片的地址 var $src = $('#img1').prop('src'); // 设置图片的地址和alt属性 $('#img1').prop({src: "test.jpg", alt: "Test Image" });
<head> <script src="js/jquery-1.12.4.min.js"></script> <script> $(function(){ var $div = $('#div1'); var $a = $('#link01'); // 读取元素包裹的内容 var sTr = $div.html(); // alert(sTr); // 写入或者叫设置元素包裹的内容 $div.html('改变的文字'); $div.html('<a href="http://www.baidu.com">百度网</a>') $div.html('<ul><li>列表文字</li><li>列表文字</li><li>列表文字</li></ul>'); // 操作元素标签内除样式之外的其他的属性 // 读取属性值: alert( $a.prop('id') ); // 写入或者叫设置属性值 $a.prop({'href':'http://www.google.com','title':'这是去到谷歌的网站的链接'}); $a.html('110'); }) </script> </head> <body> <div class="box" id="div1">这是一个div</div> <a href="#" id="link01">这是一个链接</a> </body>阅读更多
相关文章推荐
- jquery中dom操作和事件的实例学习-表单验证
- jquery中dom操作和事件的实例学习-表单验证
- Jquery选择器大全、属性操作、css操作、文档、事件等
- 【JS】【jQuery】【操作对象:属性,节点,事件】
- jquery操作大全筛选dom事件动画表单等
- jquery对表单操作_表单验证
- 基于jquery实现智能表单验证操作
- jQuery.validate验证时用的是Form输入表单的name属性
- JQuery formValidator表单验证插件属性介绍
- jQuery中的属性操作,jQuery中的事件处理、jQuery 中的动画简单介绍
- jQuery的属性,事件及操作
- jQuery编程基础精华02(属性、表单过滤器,元素的each,表单选择器,子元素过滤器(*),追加方法,节点,样式操作)
- jquery中对表单属性的操作总结
- Day5 JavaScript(三)事件、表单验证以及初识jQuery
- jQuery编程基础精华02(属性、表单过滤器,元素的each,表单选择器,子元素过滤器(*),追加方法,节点,样式操作)
- jQuery根据name属性操作textarea、text、radio,通达OA表单js设计
- jQuery 之 (二)事件操作、jq对文档的操作、属性选择器使用
- jquery 与javascript关系 ①取元素 ②操作内容 ③操作属性 ④操作 样式 ⑤ 事件 点击变色
- jQuery 效果函数,jquery文档操作,jQuery属性操作方法,jQuerycss操作函数,jQuery参考手册-事件,jQuery选择器
- 兼容IE8以下浏览器input表单属性placeholder不能智能提示功能,以及使用jquery.validate.js表单验证插件的问题处理