簡體   English   中英

我有DIV及其子DIV,我想使用jQuery選擇最后一個DIV。 父級DIVS有ID

[英]I have DIV and its child DIV , i want to select last DIV using jQuery . Parent DIVS have id

這是問題的描述。 我有父div(allcomments_4),比它里面的子divs(oneEntry)少,里面有自己的孩子,但我只需要找到父節點的最后一個孩子(allComments_4)。 我想讀取div(lastComment)內部的內容,而不是在此div之上添加內容,這類似於使用jquery的div(oneEntry)以上。 我想使用id而不是class進行此操作。 當我計算allComments_4 div的ID時。 我嘗試過這樣。

<script>
    var allcommentsId =allcomments_4
    var right = "div#lastComment"
    var left = '#'+allcommentsId 
    var message = $(left>right ).html()
    alert(message)
</script>

<div id="allcomments_4">
 <div class="oneEntry">
   <div class="commentImage">
   </div>
   <div class="commentEntry">
   <div class="commentText">
   </div>
   <div class="commentDate">
    Commented On -"Thu Jan 26 16:44:16 EST 2012"/>
   </div>
 </div>
 <div class="oneEntry">
   <div class="commentImage">
   </div>
   <div class="commentEntry">
   <div class="commentText">
   </div>
   <div class="commentDate">
    Commented On -"Thu Jan 26 16:44:16 EST 2012"/>
   </div>
 </div>
</div><!-- One Comment Entry Ends here -->
<div id ="lastComment">
</div><!-- last Comment ends here -->
</div><!-- All Comments Ends here -->

我認為缺少一些東西,很抱歉問到我在jquery和這整個javascript方面的初學者這樣la腳的問題。

如上所述,ID必須是唯一的。 話雖如此,這是一種完成您所要求的方法(在適當的地方使用類):

function displayContent(IdNum) {
    var Id = '#allcomments_' + IdNum;
    var $lastComment = $(Id).find('.lastComment');
    var message = $lastComment.html();
    alert(message);
}

displayContent(4);

帶類的HTML(供參考):

<div id="allcomments_4">
    <div class="oneEntry">
        <div class="commentImage">
        </div>
        <div class="commentEntry">
            <div class="commentText">
            </div>
            <div class="commentDate">
            Commented On - "Thu Jan 26 16:44:16 EST 2012"
            </div>
        </div>
    </div>
    <div class="oneEntry">
        <div class="commentImage">
        </div>
        <div class="commentEntry">
            <div class="commentText">
            </div>
            <div class="commentDate">
            Commented On - "Thu Jan 26 16:44:16 EST 2012"
            </div>
        </div>
    </div><!-- One Comment Entry Ends here -->
    <div class="lastComment">
        Body of lastComment
    </div><!-- last Comment ends here -->
</div><!-- All Comments Ends here -->

jsFiddle: http : //jsfiddle.net/yT8Fc/

var message = $(left>right ).html()

這是行不通的,因為它給出了比比較大的結果作為參數。 它必須看起來像這樣:

var message = $(left + ' > ' + right).html()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM