2013-05-30 35 views
0

我有一些加載在我的網站上的文本,帶有jQuery方法load()。點擊外部加載內容的功能

我想關閉(空())我點擊h2時加載的div。

我的HTML:

<html> 
    <div class="info_item" id="post1"> 
     <div name="x" class="item" id="loaded_with_ajax"> 
     <h2>Click on this h2 should empty the div with class="item"</h2> 
     <h3>this is a h3</h3> 
     <p>this is a paragraph</p> 
     </div> 
    </div> 
</html> 

我的jQuery;

$("h2").on('click', function() { 
    $(this).parent("div").empty(); 
}); 

也許我的代碼是錯誤的,但即使我把在點擊H 2的警報(),所加載的內容,它不反應。

在此先感謝。

+0

使用$(本).parent( 「格」)文本( 「」)。 – Dineshkani

+0

不改變任何東西:(這就像點擊功能沒有應用在加載的內容.. –

+1

看到這個小提琴http://jsfiddle.net/Dineshkani/pj4tp/。調用你的jQuery代碼在onload或$(文檔).ready(function(){// Your code}); – Dineshkani

回答

0

你必須使用委託:

$(".info_item").on('click', "h2", function() { 
    $(this).closest(".item").empty(); 
}); 

我用closest()這裏讓你的代碼更通用。

+0

這幾乎可行!:)它關閉div,但在第二次打開它..? –

+0

看起來像觸發其他處理程序。你確定沒有其他的處理程序可以通過傳播來調用嗎? –

0

按照您的問題:「我想關閉(空())在div我時其H2點擊加載」使用jQuery選擇方法,獲得編號或名稱和EMPTY或 的jQuery(「#DIV parentdivID ')的.html('');

0

使用本

$('.item').on('click', "h2", function() { 
    $(this).parent().empty(); 
}); 

DEMO

演示負荷AJAX內容後3秒

+0

不起作用。如果.item更改爲.info_item,它會關閉h2,但會在一秒之內再次打開它。 –

+0

@JW_更新的答案與演示 –

+0

謝謝!我想我需要對HTML進行一些更改,然後才能用作演示。 –