按ID动态选择嵌套元素

时间:2014-06-24 15:02:58

标签: jquery html css

我从未完全理解JQuery选择器。如何上/下或进/出动态创建并仅由唯一ID标识的嵌套元素。例如,我现在有这个:

<div class="item white" id="871" name="871">
    <span class="twitter"><a href="php/tweet.php">Tweet</a></span>        
    <div class="topleft">
         <ul class="ribbon pinky">
             <li class="date_header"></li>
             <li class="date_number"></li>
             <li class="date_footer"></li>                          
         </ul>
    </div>
    <div class="bottomleft">
         <ul class="links">
             <li><a href=""><img src="" alt=""/></a></li>
             <li><a href="mailto:"><img src="" alt=""/></a></li>
         </ul>
    </div>
    <div class="topright">
        <ul class="white_box_content">
             <li class="picture"><img class="image" src="" alt="" /></li>
             <li class="title"></li>
             <li class="subtitle"></li> 
             <li class="description"></li>
         </ul>
    </div>
    <div class="item_footer">
    <div class="line"></div>
         <ul class="footer_content">
               <li class="place"></li>
               <li class="contacts"></li>
         </ul>
    </div>
</div>

我的网页是由许多HTML'块'构建的。现在我想使用JQuery获取ID和'title'类的值,因为我想使用Ajax将它们传递给PHP文件。

 $(".twitter").click(function(event){ 
      event.preventDefault();
           var i = $(this).closest('.item').attr('id');
           var t = TITLE ??
           $.get("php/tweet.php", { id: i, title: t } );
           return false;
 });

我设法只使用以下方式获取ID:

$(this).closest('.item').attr('id');

现在,如何获得.TITLE课程?如何使用ID选择正确的.TITLE? 当我点击链接时,我想将.title值传递给tweet.php。

2 个答案:

答案 0 :(得分:0)

尝试find():

$(this).closest('.item').find('.title').html();

http://api.jquery.com/find/

http://api.jquery.com/class-selector/

该代码在具有类项的元素内获取具有类标题的元素的html内容。

答案 1 :(得分:0)

获得ID后,您可以使用它来获取.title div:

var t = $("#"+i+" .topright .title");

如果你想要div中的标题:

var t = $("#"+i+" .topright .title").text();