2017-04-14 23 views
0

動作していないと私は追加jqueryのHTMLの機能に新しい要素を追加した後、私はテーブルの要素を追加するために、コードを書かれている

が動作していない、そのクラスのonclickの機能をログコンソールしようとしています

<div> 
    <table id="con"> 
     <tr><td class="delete"> something</td></tr> 
    </table> 
</div> 
<script> 
    $("#a").click(function() { 
     $("#con").append("<tr> <td class='delete'>something</td></tr>") 
    }); 


    $(".delete").click(function() { 
     console.log("clicked"); 
    }) 

</script> 
+1

idは "a"の要素はどこですか? –

+0

@Karan [mcve]をお読みください – yezzz

答えて

0

クリックハンドラは、ハンドラをバインドした時点で既にページに存在する要素にのみバインドされるため、動作しません。
委任されたイベントが必要です。

あなたがする必要があるかを理解するために、これを読んで:
https://learn.jquery.com/events/event-delegation/

それの要旨はこれです:

変更この...

$(".delete").click(function() { 
    console.log("clicked"); 
}); 

を...にこれ...

$("#con").on("click", ".delete", function() { 
    console.log("clicked"); 
}); 
関連する問題