JQuery的父、子、兄弟节点查找,节点的子节点循环

时间:2024-01-02 08:07:50

Query.parent(expr)           //找父元素

jQuery.parents(expr)          //找到所有祖先元素,不限于父元素

jQuery.children(expr)        //查找所有子元素,只会找到直接的孩子节点,不会返回所有子孙

jQuery.contents()            //查找下面的所有内容,包括节点和文本。

jQuery.prev()                //查找上一个兄弟节点,不是所有的兄弟节点

jQuery.prevAll()             //查找所有之前的兄弟节点

jQuery.next()                //查找下一个兄弟节点,不是所有的兄弟节点

jQuery.nextAll()             //查找所有之后的兄弟节点

jQuery.siblings()            //查找兄弟节点,不分前后

jQuery.find(expr)            //跟jQuery.filter(expr)完全不一样,jQuery.filter(expr)是从初始的

jQuery对象集合中筛选出一部分,而jQuery.find()的返回结果,不会有初始集中

筛选出一部分,而jQuery.find()的返回结果,不会有初始集合中的内容,比如:

$("p").find("span")是从元素开始找,等于$("p span")

在jquery 中我们可以选择$().each() 与 $.each() 进行迭代对象和数组

$(items).each(function(){

//item

})   ,

而后者则

$.each(items,function(i,item){

//write your code

})

$("button").click(function(){
$("li").each(function(){
alert($(this).text())
});
});
$("#ID >div").each(function(){
alert($(this).attr("id")); //打印子div的ID
}); 循环id为plan_value下的所有input标签,当标签类型为隐藏标签时获取下一个标签并对它们的值进行操作
var plan_value_str = "";
$("#plan_value >input").each(function(){
if($(this).attr("type")=="hidden"){
if(plan_value_str == ""){
plan_value_str = $(this).attr("value")+"-"+$(this).next().attr("value");
}else{
plan_value_str = plan_value_str+";"+$(this).attr("value")+"-"+$(this).next().attr("value");
}
}
})
$("#plan_value_str").val(plan_value_str);