jquery如何获取没有子节点的元素

jquery如何获取没有子节点的元素,第1张

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获取到某个子元素等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9641560.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存