
Jquery获取子元素的方法有2种,分别是children()方法和find()方法。下面我们分别来使用这两种方法,看看它们有何差异。
children()方法:获取该元素下的直接子集元素
find()方法:获取该元素下的所有子集元素
分别以以下HTML代码为例:<ul><li>list1<ul><li>list1-1</li><li>list1-2</li></ul></li><li>list2<ul><li>list2-1</li><li>list2-2</li></ul></li><li>list3<ul><li>list3-1</li><li>list3-2</li></ul></li></ul>
children()方法获取ul下面直接子集元素li:$("ul")children("li")
需要注意的是,如果li元素下还有li元素,children方法将不会被获取。我们可以用length来测试获取的个数“$("ul")children("li")length”,最后输出结果为3
find()方法获取ul下所有元素li:$("ul")find("li")
需要注意的是,find方法会无限循环查找ul标签节点下的li,一直找到没有为止,用length来测试获取个数“$("ul")find("li")length”,最后输出结果为9
children和find的区别:children只会查找直接子集,而find会跨越层级查找,一直找到没有为止。
Jquery获取层级元素的方法有2种,分别是children()方法和find()方法。
1children()方法:获取该元素下的直接子集元素
2find()方法:获取该元素下的所有子集元素
3children()方法获取ul下面直接子集元素li:$("ul")children("li")
4find()方法获取ul下所有元素li:$("ul")find("li")
5children和find的区别:children只会查找直接子集,而find会跨越层级查找,一直找到没有为止。
<script type="text/javascript">
// jq用法
function getUrl() {
alert($("tendertab current")text());
}
// Javascript
function getUrl() {
var ul = documentgetElementsByTagName("ul");
if(ul != null) {
for(var i = 0, j = ullength; i < j; i++) {
var obj = ul[i];
var className = objgetAttribute("class");
if(className == "tendertab") {
var li = objgetElementsByTagName("li");
for(var m = 0, n = lilength; m < n; m++) {
var className2 = li[m]getAttribute("class");
if(className2 == 'current') {
alert(li[m]innerText);
break;
}
}
break;
}
}
}
}
</script>
jQuery没有那么选择器,但是可以通过 jQuery [attribute=value] 选择器实现根据name筛选的效果。
定义和用法
[attribute=value] 选择器选取每个带有指定属性和值的元素。可以选取带有任何属性的元素(对于指定的属性没有限制)。
语法:$("[attribute=value]")
参数:
attribute
必需。规定要查找的属性。
value
必需。规定要查找的值。
实例
//查找所有name="on"的标签$("[name=one]")
[attribute]选择器还有更多用法,例如:
$("[href]") //所有带有 href 属性的元素$("[href='#']") //所有 href 属性的值等于 "#" 的元素
$("[href!='#']") //所有 href 属性的值不等于 "#" 的元素
$("[href$='jpg']") //所有 href 属性的值包含以 "jpg" 结尾的元素
//更多[attribute]选择器的用法可以查看jQuery的api
可以使用jQuery的children方法来获取某个元素下的所有子元素。
工具原料:编辑器、浏览器
1、使用children方法可以获得选择器下的所有子元素,代码实例如下:
<!DOCTYPE html><html>
<head>
<script type="text/javascript" src="/jquery/jqueryjs"></script>
<style>
body { font-size:16px; font-weight:bolder; }
p { margin:5px 0; }
</style>
</head>
<body>
<div>
<span>Hello</span>
<p class="selected">Hello Again</p>
<div class="selected">And Again</div>
<p>And One Last Time</p>
</div>
<script>$("div")children("selected")css("color", "blue");</script>
</body>
</html>
2、运行的结果是找到类名为 "selected" 的所有 div 的子元素,并将其设置为蓝色,结果如下:
以上就是关于jquery如何获取没有子节点的元素全部的内容,包括:jquery如何获取没有子节点的元素、jquery怎么获取层级元素、jquery获取到某个子元素等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)