2011-01-23 63 views
2

我有以下HTML格式:如何從給定的HTML獲得DIV ID在JQuery中

<ul class="whatlike-list"> 
    <li class="first"> 
     <a href="/SessionHandler.aspx" class="button-flight-search">Search for Flights</a> 
     <div class="open-block-holder"> 
      <div id="slideFlightSearch" class="open-block" style="display: block; left: 650px;"> 

      </div> 
     </div> 
    </li> 
</ul> 

現在我期待的環節的點擊獲得DIV ID =「slideFlightSearch」「搜索航班「,我的$ this這個對象中有類」button-flight-search「。在我的JQuery中就像下面的東西。

$(link).click(function() 
{ 
    alert($(this).attr("class")); 
}) 

在上述警告我得到了類「按鈕航班搜索」,但我需要內部DIV ID slideFlightSearch

請建議使用JQuery。

回答

2

您可以使用.next.find,像這樣:

$(link).click(function() { 
    var id = $(this).next(".open-block-holder") 
        .find("div") // or .find("div.open-block") 
        .attr("id"); 
}); 
+1

是不是有關無法知道ID的`#slideFlightSearch`的問題?如果我們知道這個id,我們可以直接跳到`$('#slideFlightSearch')。doSomething();` – 2011-01-23 11:52:07

1

你可以嘗試:

$('a').click(
    function(){ 
     var theDivID = $(this).closest('li').find('.open-block').attr('id'); 
     alert('The div's ID is: ' + theDivID); 
     return false; // If you need to prevent the default action of clicking on a link. 
    }); 
0

使用HTML結構不使用ID或類屬性的方法。

$(link).click(function() 
{ 
    alert($(this).next()   //get div with class "open-block-holder". 
       .children()  //get the inner div with class "open-block". 
       .attr("id")) ; //get the ID. 

}) 
相關問題