jQuery中如何进行遍历?几种遍历方式浅析
jQuery中如何进行遍历?下面本篇文章就来给大家分享几种遍历对象的方式,希望对大家有所帮助!

jQuery遍历的几种方式
我们都知道js 的遍历方式为: for(初始化值;循环结束条件;步长) 例如:
for (var i = 0; i < 3; i++) {//循环体}
jQuery遍历大概有如下几种用法:
1. jq对象.each(callback) 或 选择器.each(callback)【推荐学习:】
callback的返回值最后再做说明
1.1. 回调函数不带参数 (*注意:这种不带参数的回调只能获取到集合中的每一个元素对象,而不能获取到相应索引值,且只能通过this来获取对象)
->语法: jquery对象.each(function(){});
//html
<ul id="course">
<li>js</li>
<li>java</li>
<li>C++</li>
<li>jq</li>
</ul>
//实例
$("button").click(function(){
$("#course li").each(function(){
alert($(this).html());//jq获取方式
alert(this.innerHTML);//js获取方式
});
});
1.2. 回调函数带参数(*可以获取到index索引,且有两种获取元素对象的方式,如下)
->语法:jquery对象.each(function(index,element){});
- index:就是元素在集合中的索引
- element:就是集合中的每一个元素对象
- this:集合中的每一个元素对象
//实例
$("#course li").each(function (index, item) {
//3.1 获取 li对象 第一种方式 this
//alert(this.innerHTML);//js获取
//alert($(this).html());//jq获取
/*3.2 获取 li对象 第二种方式
在回调函数中定义参数 index(索引)item(元素对象)*/
// alert(index+":"+item.innerHTML);
alert(index+":"+$(item).html());
}
2. jQuery.each(object, [callback])
callback的返回值最后再做说明
2.1. 回调函数不带参数 (*与1.1效果类似,只能通过this来获取对象)
->语法:$.each(object,function(){});
$.each($("#course li"),function () {
//alert($(this).html());//jq获取方式
alert(this.innerHTML);//js获取方式
});
2.2. 回调函数带参数(*可以获取到index索引,与1.2效果类似,写法不同,如下)
->语法:$.each(object,function(){index,item});
- index:就是元素在集合中的索引
- item:就是集合中的每一个元素对象
- this:集合中的每一个元素对象
$.each($("#course li"),function (index,item) {
//3.1 获取 li对象 第一种方式 this
// alert(this.innerHTML);//js获取
// alert($(this).html());//jq获取
/*3.2 获取 li对象 第二种方式
在回调函数中定义参数 index(索引)item(元素对象)*/
//alert(index+":"+item.innerHTML);
alert(index+":"+$(item).html());
});
3. for…of: jquery 3.0 版本之后提供的方式(*了解)
->语法:for(元素对象 of 容器对象)
for (li of $("#course li")) {
alert($(li).html());
}
4. 回调函数返回值问题(涉及第一第二):(*补充)
- true:如果当前function返回为false,则结束循环(break)。
- false:如果当前function返回为true,则结束本次循环,继续下次循环(continue)
例如:
$.each($("#course li"), function (index, item) {
//判断如果是java,则结束循环
if ("java" == $(item).html()) {
//如果当前function返回为false,则结束循环(break)。
//如果返回为true,则结束本次循环,继续下次循环(continue)
return false;
}
alert($(this).html());//此时前端页面只会弹出第一个值js
});
$.each($("#course li"), function (index, item) {
//判断如果是java,则结束循环
if ("java" == $(item).html()) {
//如果当前function返回为false,则结束循环(break)。
//如果返回为true,则结束本次循环,继续下次循环(continue)
return true;
}
alert($(this).html());//此时前端页面会依次弹出js,C++jq,不会弹出java
});
(学习视频分享:)
以上就是jQuery中如何进行遍历?几种遍历方式浅析的详细内容,更多请关注php中文网其它相关文章!
声明:本文转载于:csdn,如有侵犯,请联系admin@php.cn删除
- 上一篇:
- 下一篇:
2. 本站不保证所提供所有下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有RB奖励和额外RMB收入!
磊宇堂正在使用的服务器 维护管理由磊宇云服务器提供支持
磊宇堂 » jQuery中如何进行遍历?几种遍历方式浅析
