2013-01-24 282 views
0
<div class="srch-sb-results"> stuff here </div> 
<table> 
    <tr> 
     <td colspan='3'> 
     <div style="border:1px solid silver"></div> 
     </td> 
    </tr> 
<table> 

我需要選擇呈現銀色邊框的div如何在jquery中選擇div並隱藏它?以及與colspan的表格單元格。選擇相鄰元素的子元素

+0

你是什麼意思?相對於哪個元素選擇它? – BenM

+0

你可以提供更多的上下文嗎?你什麼時候試圖隱藏表格列/ div?是預定義的html還是可以更改它? – renab

+0

選擇它基於$(。'srch-sb-results')。next()。find('div').....類似這樣的東西..我無法控制html ... – Athapali

回答

1
$('.srch-sb-results').next('table').find('td[colspan="3"]').hide(); 

應該這樣做。包括OP的原始請求隱藏有合併單元格= 3

+0

-1。 '.srch-sb-results'不包含'table'。 – BenM

+0

哎呀....錯過了。 EDITED –

0

試試這個TD:

$('table div').each(function() {//selects all divs inside table 

    var bColor = $(this).css('border-color');//checks each element's border-color 
    if(bColor === 'silver') { 
     $(this).hide(); 
    } 

}); 
0

如果你不改變,你可以使用鄰近的兄弟姐妹CSS選擇器選擇裏面的第一個div的HTML像這樣在第一表行的第一個表格單元格:

$('.srch-sb-results + table > tr:first > td:first > div:first').hide(); 

更容易將改變HTML並設置在div ID和直接選擇。

0

如果這個div是唯一的:

$('td[colspan="3"] > div').hide(); 

或更爲嚴格,以CSS應該是這樣的:

$('td[colspan="3"] div').each(function(){ 
    if ($(this).css('border')) $(this).hide(); 
});