2012-05-08 78 views
0

我有HTML,看起來像這樣最近的還是父母或小孩?

<div class="portlet portlet_30"> 

    <div class="portlet_header portlet_header_30"> 
     header content here 
    </div> 

    <div class="portlet_sub_header portlet_sub_header_30"> 
     <input type="text" class="textbox_30" /> 
    </div> 

    <div class="portlet_content portlet_content_30"> 
     results go here 
    </div> 

    <div class="portlet_footer portlet_footer_30"> 
     <input type="button" class="button_30" /> 
    </div> 

</div> 

somethine如果我有2個以上的單頁上的,即

<div class="portlet portlet_30"> 

    <div class="portlet_header portlet_header_30"> 
     header content here 
    </div> 

    <div class="portlet_sub_header portlet_sub_header_30"> 
     <input type="text" class="textbox_30" /> 
    </div> 

    <div class="portlet_content portlet_content_30"> 
     results go here 
    </div> 

    <div class="portlet_footer portlet_footer_30"> 
     <input type="button" class="button_30" /> 
    </div> 

</div> 

<div class="portlet portlet_30"> 

    <div class="portlet_header portlet_header_30"> 
     header content here 
    </div> 

    <div class="portlet_sub_header portlet_sub_header_30"> 
     <input type="text" class="textbox_30 /> 
    </div> 

    <div class="portlet_content portlet_content_30"> 
     results go here 
    </div> 

    <div class="portlet_footer portlet_footer_30"> 
     <input type="button" class="button_30" /> 
    </div> 

</div> 

如何停止的抗干擾,即怎麼做我唯一的變化第二個portlet_content_30中的文本如果點擊了第二個portlet中的按鈕。對於第一個應該會發生同樣的情況,而不會影響屏幕上的第二個或任何其他portlet相同。

回答

3
$('.button_30').click(function(){ 
    $(this).closest('.portlet.portlet_30').text("foo"); 
}); 

或者,如果你想改變的portlet portlet_30 div的一個:

$('.button_30').click(function(){ 
    $(this).closest('.portlet.portlet_30') 
      .find('.portlet_header.portlet_header_30').text("foo"); 
}); 

Live DEMO

0
$('.button_30').click(function(){ 
    $(this).parent('.portlet').find(".portlet_content").text(result); 
}); 
0

嘗試:

$('input.button_30').click(function(){console.log('x'); 
    $(this).parent().siblings('div.portlet_content.portlet_content_30').html('Your html here') 
})​ 

jsFiddle example

0

你可以嘗試這樣的事情(從我頭上寫着:P):

$('.button_30').click(function() { 
     var parent = $(this).closest('.portlet'); 
     $('.portlet_content_30', parent).html('foobar'); 
    });