2015-01-15 47 views
2

我有一個頁面,它有一個搜索表單和一個結果加載的表格。我正在嘗試使用jQuery來查找表的下一個實例,但由於某種原因我無法找到它。jQuery查找下一張表

<div class="search"> 
    <form class="search" method="get" action="/page.php"> 
    <input id="search" type="text" value="" name="search"> 
    <input type="submit" value="search"> 
    </form> 
</div> 

<table id="Organization" class="table" width="100%" > 
...table stuff... 
</table> 

使用jQuery我想要「的onclick」的搜索按鈕,我試圖抓住一個表的下一個實例,並獲得類表。我曾嘗試這樣做,這是行不通的:

$(this).next('table').attr('class'); 

能有人幫我選擇一個表的下一個實例點擊我的窗體上的搜索按鈕後?

回答

3

jQuery Documentation for next()說:

如果提供的jQuery代表了一組DOM元素,在的.next()方法允許我們通過在DOM樹中這些元素的緊隨兄弟搜索並從匹配元素構造一個新的jQuery對象。

這意味着在下一步您只能在同一級別上立即找到所選元素後面的元素。據其後面應該工作:

$(".search").next("table").attr('class'); 

如果您有與類的多個元素search可以使用$.parents方法來查找祖先search格,然後尋找下一個表。

$(this).parents(".search").next("table").attr('class'); 

但是你爲什麼要用next()呢?您可以選擇表格,例如通過它的類或由一個ID,如果你分配一個。

修改後的表(按屬性id擴展)將是:

<table id="the_table" class="table">...</table> 

方法來選擇表:

$(".table").attr('class'); // by class 
$("#the_table").attr('class'); // by id 
0
$(this).closest('div').next('table'); 
+0

解釋你在做什麼和格式化代碼,請。 – Seth