Jquery的parent和parents(找到某一特定的祖先元素)用法

 
  1. <!--

  2. parent是指取得一个包含着所有匹配元素的唯一父元素的元素集合。

  3. parents则是取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。

  4.  
  5. parent取得很明确就是当前元素的父元素

  6. parents则是当前元素的祖先元素

  7. -->

  8. <html>

  9. <head></head>

  10. <body>

  11. <div id="div1">

  12. <div id="div2"><p></p></div>

  13. <div id="div3" class="a"><p></p></div>

  14. <div id="div4"><p></p></div>

  15. </div>

  16. </body>

  17. <script type="text/javascript" src="jquery-1.7.1.min.js"></script>

  18. <script type="text/javascript">

  19. $("p").parent(); //取得的是div2、div3、div4

  20. $('p').parent('.a'); //取得是div3

  21. $('p').parent().parent(); //取得是div1(这点比较奇特,不过Jquery对象本身的特点决定了这是可行的)

  22. $('p').parents(); //取得的是div1、div2、div3、div4

  23. $('p').parents('.a'); //取得的是div3

  24. </script>

  25. </html>

 
  1. <body>

  2. <table>

  3. <tr>

  4. <td><input id="btn1" class="btn" type="button" value="test"/></td>

  5. <td>some text</td>

  6. </tr>

  7. </table>

  8. </body>

  9. <script type="text/javascript" src="jquery-1.7.1.min.js"></script>

  10. <script type="text/javascript">

  11. $(function(){

  12. $("#btn1").click(function(){

  13. alert($(this).parent().next().html());

  14. });

  15. });

  16.  


打印结果:some text

其中:

1、this.parent() 获取的是input前面的td;

2、this.parent().parent() 获取的是tr;

3、this.parent().parent().parent() 获取的是table;

4、this.parent().next() 获取的是input前面的td相邻的另一个td。

另一个例子中:

 
  1. <div>

  2. <p>Hello</p>

  3. <p>Hello</p>

  4. </div>

 $('p').parent() 得到的是:<div><p>Hello</p><p>Hello</p></div>对象,因为p标签的父标签是div

有关parents

 
  1. <div id="one">

  2. <div id="Two">hello</div>

  3. <div id="Three">

  4. <p><a href="#">tonsh</a></p>

  5. </div>

  6. </div>


$("a").parent() 将会得到父对象<p>

$("a").parents()  得到父对象<p><div.3><div.1>

$("a").parents().filter("div") 将得到<div.3><div.1> 还可以写成$("a").parents("div")。

如果想得到<div.2>对象可以写成这样:$("a").parents("div:eq(0)")。

如果点击<a>链接时弹出<div.2>中的内容该怎么办?

var id=$("a").parents("div:eq(1)").children("div:eq(0)").html();

alert(id);

猜你喜欢

转载自blog.csdn.net/qq_25221835/article/details/81320396
今日推荐