2016-08-03 59 views
0

我並不擅長在jquery中遍歷。這裏是我的標記:jquery在前一個兄弟的第三個孩子中定位一個標籤

<div class="row planarea"> 

    <div class="col-md-6"> 
    <h1>Agera Fixed Advantage 12</h1> 
    Fixed Price - 12 Months<br> 
    Utility: Con Edison 
    </div> 

    <div class="col-md-3"> 
    <span class="price">$0.0799</span> <span class="killowats">/ kWh</span> 
    </div> 

    <div class="col-md-3"> 
    <a class="nolink showmore" data-toggle="collapse" data-target="#24moscollapse" aria-expanded="false" aria-controls="24moscollapse"> 
     <div class="selectdetails"> 
     Details <i class="fa fa-chevron-circle-down" aria-hidden="true"></i> 
     </div> 
    </a> 

    <label > 
     <input type='radio' name="prefs" class="hidecheck" value="mail"> 
     <span></span> 
    </label> 

    </div> 


</div><!--row--> 

<div class="row collapse detailsrow" id="24moscollapse"> 
    <div class="col-xs-12 plandetailsbox"> 
    stuff 
    </div> 
</div> 

我想要做的就是類似這樣的東西:

$('.detailsrow').on('show.bs.collapse', function() { 
    $(this).prev().closest().("a.showmore").html('<div  class="selectdetails">Details <i class="fa fa-chevron-circle-up" aria- hidden="true"></i></div>'); 
}) 

我似乎無法弄清楚如何定位到該標籤,它是越來越那種混亂。我需要針對以前兄弟姐妹的第三個孩子中的每一個重複行的信息來確定我認爲的標籤。任何幫助,將不勝感激。

+0

'.closest()'向上導航和語法是使括號內的選擇器。我想你想要'.find(「selector」)'。 – dlsso

+0

謝謝這是我所需要的。像現在的魅力工作:) –

+1

是的,不要忘記標記Mojtaba的答案,如果它解決了你的問題。 – dlsso

回答

1

closest()找到第一個父親。最接近(選擇器)找到第一個選擇器匹配的父對象。

鑑於您正在尋找一個孩子。所以,你可以使用find(選擇器)。

更改此:

$(this).prev().closest().("a.showmore") 

向該:

$(this).prev().find("a.showmore") 
+0

沒有答案,直到我發佈一個反正這是正確的+1。快樂的編碼。 :)。如果你可以解釋一下OP,那麼這將非常棒。刪除我的 – bipen

+0

@bipen,沒問題。我更新了答案。如果你想添加更多,請隨時編輯我的答案 – Mojtaba

相關問題