欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jquery parent和parents的区别分析

程序员文章站 2022-05-02 22:55:24
可以看出parent的取值很明确,就是当前元素的父元素;parents则是当前元素的祖先元素。下面列出例子说明: . 代码如下:

可以看出parent的取值很明确,就是当前元素的父元素;parents则是当前元素的祖先元素。下面列出例子说明:

. 代码如下:


<p id='p1'>
<p id='p2'><p></p></p>
<p id='p3' class='a'><p></p></p>
<p id='p4'><p></p></p>
</p>


$('p').parent()取到的是p2,p3,p4
$('p').parent('.a')取到的是p3
$('p').parent().parent()取到的是p1,这点比较奇特;不过jquery对象本身的特点决定了这是可行的。
$('p').parents()取到的是p1,p2,p3,p4
$('p').parents('.a')取到的是p3
parent(exp)用法:取得一个包含着所有匹配元素的唯一父元素的元素集合。

. 代码如下:


<script src="jquery-1.2.6.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#btn1").click(function(){
alert($(this).parent().next().html());
});
});
</script>
</head>
<body>
<table>
<tr>
      <td><input id="btn1"  class="btn" type="button"  value="test" /></td>
      <td>some text</td>
</tr>
</table>


其中:
this.parent()是input前面的td
this.parent().parent()获取的是tr
this.parent().parent().parent()获取的是table
this.parent().next()获取的是td相临的td
例子中:
<p><p>hello</p><p>hello</p></p>
$("p").parent() 得到的是:<p><p>hello</p><p>hello</p></p>对象,因为p标签的父标签是p