JQuery的遍历
2016-07-09 15:59
441 查看
为了能够更好地理解jquery,除了上一部分的基础知识之外,还有一些概念我们需要熟悉,在开发的时候使用jquery,会给我们带来很大便利,所以今天我们就来说说,each的一些用法。
1.each的好处
each()方法能使DOM循环结构简洁,不容易出错
each()函数封装了十分强大的遍历功能,使用也很方便
它可以遍历一维数组、多维数组、DOM, JSON 等等
在javaScript开发过程中使用$each可以大大的减轻我们的工作量。
2.each来遍历数组
用来引入外部js
eachtest.js
3.each来遍历json对象
html也就只是负责两个js文件的引入
其中jsontest.js来去json对象
4.each来遍历dom对象
方法一:
ps:Jquery选择器input:hidden和input[type=hidden]的区别?
关于选择器:hidden的声明,在jquery文档中是如此说的:匹配所有不成见元素,或者type为hidden的元素。而 [type=hidden]是查找所有type属性是hidden的元素。
两者是有雷同之处和不合之处的。:hidden匹配所有不成见元素,或者 type为hidden的元素,所有样式display是none的元素和子元素以及type=”hidden”的表单元素都在查找的结果中,而 [type=hidden]则只查找type属性为hidden的元素。
所以,input:hidden是查找不成见容器中的input元素,包含,textbox,radio,checkbox,button等和type=”hidden”的表单元素。input[type=hidden]仅仅查找type=”hidden”的表单元素
方法二:
我们也可以采用调用相应的each方法来使用
其实这种方式是前面的比较类似,只是要看哪种方式更适合自己理解了
采用jquery的基本知识也就这么多,自己多多动手实践一下,感觉那些之前难以理解的函数结构也慢慢清晰了很多。
1.each的好处
each()方法能使DOM循环结构简洁,不容易出错
each()函数封装了十分强大的遍历功能,使用也很方便
它可以遍历一维数组、多维数组、DOM, JSON 等等
在javaScript开发过程中使用$each可以大大的减轻我们的工作量。
2.each来遍历数组
用来引入外部js
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>遍历数组</title> </head> <body> <!-- 引入jquery框架--> <script src="js/jquery.js"> </script> <!-- 引入外部js框架--> <script src="js/eachtest.js"> </script> </body> </html>
eachtest.js
$(function(){ // 一维 var arr1 = [ "张三", "李四", "王五" ]; // 最开始的方式 for( var i in arr1){ // alert(i+":"+arr1[i]); } // 采用each $.each(arr1,function(i,nameval){ //alert(i);//输出0,1,2 //alert(nameval);//输出 张三,李四,王五 }); // 二维 var arr2 = [[ "张三", "李四", "王五","赵六" ],[ "张三2", "李四2", "王五2" ],[ "张三3", "李四3", "王五3" ]]; // 最开始的方式 for( var i in arr2){ // alert(i+":"+arr2[i]); } // 采用each $.each(arr2,function(i,arr2item){ // alert(i);//输出0,1,2 // alert(arr2item);//输出每一行 "张三", "李四", "王五" 张三2", "李四2", "王五2 ··· }); // 继续向下遍历 $.each(arr2,function(i,arr2item){ $.each(arr2item,function(j,detailperson){ alert(j);////输出0,1,2,3 alert(detailperson);//输出每一行具体的值 }); }); });
3.each来遍历json对象
html也就只是负责两个js文件的引入
其中jsontest.js来去json对象
$(function(){ //json对象 var students={1:"helen",2:"shirley",3:"cindy"}; //用each的方式获取 $.each(students,function(stuid,stuname){ alert(stuid);//key 学生id alert(stuname);//value 学生name }); });
4.each来遍历dom对象
方法一:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>遍历json对象</title> </head> <body> <!-- 引入jquery框架--> <script src="js/jquery.js"> </script> <!-- 引入外部js框架--> <script src="js/jsontest.js"> </script> <input name="stu1" value="学生1" type="hidden"> <input name="stu2" value="学生2" type="hidden"> <input name="stu3" value="学生3" type="text"> <input name="hidden" value="学生4" type="checkbox"> </body> </html>
$(function(){ $.each($("input:hidden"),function(i,val){//选择器,匹配所有不可见hidden元素 alert(i+"--"+val);//val会输出 object HTMLInputElement 这里是一个表单元素 alert(val.name);//input中name alert(val.value);//input中value }); });
ps:Jquery选择器input:hidden和input[type=hidden]的区别?
关于选择器:hidden的声明,在jquery文档中是如此说的:匹配所有不成见元素,或者type为hidden的元素。而 [type=hidden]是查找所有type属性是hidden的元素。
两者是有雷同之处和不合之处的。:hidden匹配所有不成见元素,或者 type为hidden的元素,所有样式display是none的元素和子元素以及type=”hidden”的表单元素都在查找的结果中,而 [type=hidden]则只查找type属性为hidden的元素。
所以,input:hidden是查找不成见容器中的input元素,包含,textbox,radio,checkbox,button等和type=”hidden”的表单元素。input[type=hidden]仅仅查找type=”hidden”的表单元素
方法二:
我们也可以采用调用相应的each方法来使用
$(function(){ $("input:hidden").each(function(i,val){ alert(i+"--"+val);//val会输出 object HTMLInputElement 这里是一个表单元素 alert(val.name);//input中name alert(val.value);//input中value }); });
其实这种方式是前面的比较类似,只是要看哪种方式更适合自己理解了
采用jquery的基本知识也就这么多,自己多多动手实践一下,感觉那些之前难以理解的函数结构也慢慢清晰了很多。
相关文章推荐
- jQuery回到顶部的代码
- jQuery 跨域访问解决原理案例详解
- jquery 回到 顶部
- jQuery插件开发
- jquery+ajax+text文本框实现智能提示完整实例
- Jquery之Bind方法--参数传递与接收的三种方法
- jQuery实现的纵向下拉菜单实例详解【附demo源码下载】
- jQuery Validate 自定义验证方法引入问题
- jQuery Validate Ajax 判断用户名是否已被注册
- jQuery实现可以编辑的表格实例详解【附demo源码下载】
- jQuery EasyUI学习教程之datagrid点击列表头排序
- jQuery简单入门示例之用户校验demo示例
- JQuery EasyUI更新说明
- jQuery Easyui学习教程之实现datagrid在没有数据时显示相关提示内容
- JQuery EasyUI学习教程之datagrid 添加、修改、删除操作
- jQuery Easyui datagrid/treegrid 清空数据
- (转)jQuery插件开发精品教程,让你的jQuery提升一个台阶
- jQuery获取同级元素的简单代码
- jQuery Easyui datagrid/treegrid 清空数据
- JQuery EasyUI学习教程之datagrid 添加、修改、删除操作