2012-08-28 82 views
2

我有使用JQuery動態創建的下一個代碼。 Theere是多個row級別div放置在另一個之下。JQuery。刪除DOM樹中的前一個兄弟節點

<div class="row"> 
    .... 
</div> 
<div class="row"> 
    <div class="line_type"></div> 
    <div class="download_value"></div> 
    <div class="flag"></div> 
    <div class="email"></div> 
    <div class="prize"></div> 
</div> 
<div class="row"> 
    .... 
</div> 

我創建這些divs後,我有一個「指針」到一個特定的DIV是row類。在JQuery中,我怎麼做到這一點,所以我沿着DOM樹走,直到我到達類line_typedownload_value的div,並將它們都刪除,並且我想再去一個節點,在email類型的div並改變它的一些CSS屬性。

我無法在網上找到任何東西,也許這是因爲我仍然是一個noob。

+0

創建[的jsfiddle ](http://jsfiddle.net/)來顯示你的DOM結構以及你到目前爲止嘗試過的東西。 –

+2

你的意思是你只是想刪除所有'.line_type'和'.download_value'元素,並編輯所有'.email'元素的樣式? – Utkanos

回答

4

我有一個「指針」到一個特定的div是類排的 - >

假設你有this對象的相應div與類row ..那麼你可以使用.find得到line_typedownload_value該div內。

$(this).find('.line_type').remove(); 
$(this).find('.download_value').remove(); 

然後你就可以使用相同的.find獲得與email類div和訪問.css

$(this).find('.email').css(/* You code*/); 
+0

哦......看起來像我在找的東西:D find()函數。讓我試試吧 – AndreiBogdan

+0

和是啊...我的意思是「這個對象的類'行'的對象'」:)呵呵 – AndreiBogdan

4

假設row_pointer點行中的問題:

$('.line_type, .download_value', row_pointer).remove(); 
$('.email', row_pointer).css(...); 
+0

不是所有這些類的div。一些。 – AndreiBogdan

+0

@AndreiBogdan那麼'$(..)'裏面的'row_pointer'就會得到你正在談論的_some_ div。 –

1

檢查了這一點

$('div.row').bind('click', function() { 
    $this = $(this); 
    $('div.line_type, div.download_value', $this).remove(); 
     $('div.email', $this).css('background-color', 'red'); 
}); 

http://jsfiddle.net/YvyE3/

相關問題