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

关于Jquery的parent和parents

parent是指取得一个包含着所有匹配元素的唯一父元素的元素集合。
parents则是取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。
可以看出parent取的很明确,就是当前元素的父元素;parents则是当前元素的祖先元素。下面列出例子说明:
<div id=‘div1‘>
<div id=‘div2‘><p></p></div>
<div id=‘div3‘ class=‘a‘><p></p></div>
<div id=‘div4‘><p></p></div>
</div>

$(‘p‘).parent()取到的是div2,div3,div4
$(‘p‘).parent(‘.a‘)取到的是div3
$(‘p‘).parent().parent()取到的是div1,这点比较奇特;不过Jquery对象本身的特点决定了这是可行的。
$(‘p‘).parents()取到的是div1,div2,div3,div4
$(‘p‘).parents(‘.a‘)取到的是div3

parent(exp)用法:取得一个包含着所有匹配元素的唯一父元素的元素集合。

  1. <script src="jquery-1.2.6.min.js" type="text/javascript"></script>
  2. <script type="text/javascript">
  3. $(document).ready(function() {
  4. $("#btn1").click(function(){
  5. alert($(this).parent().next().html());
  6. });
  7. });
  8. </script>
  9. </head>
  10. <body>
  11. <table>
  12. <tr>
  13. <td><input id="btn1"  class="btn" type="button"  value="test"/></td>
  14. <td>some text</td>
  15. </tr>
  16. </table>
  17. ....

其中:

  1. this.parent()是input前面的td
  2. this.parent().parent()获取的是tr
  3. this.parent().parent().parent()获取的是table
  4. this.parent().next()获取的是td相临的td

另例子中:

<div><p>Hello</p><p>Hello</p></div>

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

jquery的parents()使用

今天遇到一个有意思的问题,jquery有两个函数parent()和parents().通过这两个函数可以找到一个对象的父对象,又称作jquery的选择器。举个例子:

<body><div id="one"><div id="two">hello</div><div id="three"><p><a href="#">tonsh</a></p></div></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);

本文摘自:http://www.cnblogs.com/myjavawork/articles/1868991.html。

时间: 2024-10-13 16:14:55

Jquery的parent和parents(找到某一特定的祖先元素)的相关文章

Jquery中parent()和parents()

一.parent()方法 此方法取得匹配元素集合中每个元素的紧邻父元素,也就是第一级父元素,而不是所有的祖先元素.所取得的父元素集合也可以使用表达式进行筛选. 二.parents()方法 此方法取得一个包含着所有匹配元素的父辈元素的元素集合.所取得的父辈元素集合也可以使用表达式进行筛选 如果给定一个表示 DOM 元素集合的 jQuery 对象,.parents() 方法允许我们在 DOM 树中搜索这些元素的祖先元素,并用从最近的父元素向上的顺序排列的匹配元素构造一个新的 jQuery 对象.元素

jQuery的parent和parents区别

1.parent是指取得一个包含着所有匹配元素的唯一父元素的元素集合.2.parents则是取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素).可以通过一个可选的表达式进行筛选.3.closest() 方法获得匹配选择器的第一个祖先元素,从当前元素开始沿 DOM 树向上. 可以看出parent取的很明确,就是当前元素的父元素:parents则是当前元素的祖先元素.下面列出例子说明:<div id='div1'><div id='div2'><p></p

jQuery的parent()和parents()方法的用法和区别

parent()和parents()方法的用法和区别:这两个方法的作用有点类似,都可以取得父级元素,但是并非完全相同,下面结合实例简单介绍一下它们的区别.先从概念入手:1.parent()方法可以取得匹配元素的第一级父元素的集合,也就是说它获得并非匹配元素的所有祖先元素,而仅仅是父元素.2.parents()方法可以取得匹配元素的所有祖先元素(不包含根元素),而不仅仅是第一级父元素.下面看一段代码实例: <!DOCTYPE html> <html> <head> <

JS和jQuery获取节点的兄弟,父级,子级元素

原文转自http://blog.csdn.net/duanshuyong/article/details/7562423 先说一下JS的获取方法,其要比JQUERY的方法麻烦很多,后面以JQUERY的方法作对比. JS的方法会比JQUERY麻烦很多,主要则是因为FF浏览器,FF浏览器会把你的换行也当最DOM元素. <div id="test"> <div></div> <div></div> </div> 原生的J

jQuery使用(四):DOM操作之查找兄弟元素和父级元素

查找兄弟元素 向下查找兄弟元素 next() nextAll() nextUntil() 向上查找兄弟元素 prev() prevAll() prevUntil() 查找所有兄弟元素 siblings()  1.1.1.next()方法用来查找下一个兄弟元素,可以传参也可以不传参.参数可以是任意jQuery选择器,表示如果下一个元素如果是指定的元素就选定.当没有选中指定的元素时,jQuery链式调用还是保持原来的jQuery对象. <!-- next --> <button>点我&

jquery parent()和parents()区别

parent(exp) 取得一个包含着所有匹配元素的唯一父元素的元素集合. 你可以使用可选的表达式来筛选. 查找段落的父元素中每个类名为selected的父元素. HTML 代码: <div><p>Hello</p></div><div class="selected"><p>Hello Again</p></div> jQuery 代码: $("p").parent(&

jQuery查找——parent/parents/parentsUntil/closest

jquery的parent(),parents(),parentsUntil(),closest()都是向上查找父级元素,具体用法不同 parent():取得一个包含着所有匹配元素的唯一父元素的元素集合. parents():沿 DOM 树向上遍历,直到文档的根元素(<html>)为止,将每个祖先元素添加到一个临时的集合:如果应用了选择器,则会基于该选择器对这个集合进行筛选.返回零个.一个或多个元素. closest():沿 DOM 树向上遍历,直到找到已应用选择器的一个匹配为止.返回零个或一

[ jquery 过滤器 parents(expr) ] 此方法用于在选择器的基础之上搜索被选元素沿着父元素链找到符合参数的那个父元素,完成需求,如果没有参数,他会一直沿着父元素链解析到 html 标签

取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素 "!DOCTYPE html").可以通过一个可选的表达式进行筛选 实例: <html lang='zh-cn'> <head> <title>Insert you title</title> <meta http-equiv='description' content='this is my page'> <meta http-equiv='keywords

jQuery 利用 parent() parents() 寻找父级 或祖宗元素

$(this).parent().parent().parent().parent().parent().remove(); //此方法通过parent()一级一级往上找   $(this).parents("div").remove();// 此方法是找出所有父级元素以及祖宗元素  通过"div" 筛选出祖宗中是div的祖先元素 parent是指取得一个包含着所有匹配元素的唯一父元素的元素集合. parents则是取得一个包含着所有匹配元素的祖先元素的元素集合(不