JQuery中的parent

xiaoxiao2021-02-28  87

[html]  view plain  copy <!--   parent是指取得一个包含着所有匹配元素的唯一父元素的元素集合。   parents则是取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。      parent取得很明确就是当前元素的父元素   parents则是当前元素的祖先元素   -->   <html>       <head></head>       <body>           <div id="div1">           <div id="div2"><p></p></div>           <div id="div3" class="a"><p></p></div>           <div id="div4"><p></p></div>           </div>       </body>       <script type="text/javascript" src="jquery-1.7.1.min.js"></script>       <script type="text/javascript">           $("p").parent();            //取得的是div2、div3、div4           $('p').parent('.a');        //取得是div3           $('p').parent().parent();   //取得是div1(这点比较奇特,不过Jquery对象本身的特点决定了这是可行的)           $('p').parents();           //取得的是div1、div2、div3、div4           $('p').parents('.a');       //取得的是div3       </script>   </html>  

[html]  view plain  copy    <body>       <table>           <tr>               <td><input id="btn1" class="btn" type="button" value="test"/></td>                  <td>some text</td>              </tr>          </table>      </body>   <script type="text/javascript" src="jquery-1.7.1.min.js"></script>      <script type="text/javascript">   $(function(){       $("#btn1").click(function(){           alert($(this).parent().next().html());           });       });   打印结果: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。

另一个例子中:

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

有关parents

[html]  view plain  copy <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);

转载请注明原文地址: https://www.6miu.com/read-52589.html

最新回复(0)