jQuery中表格的点击事件

ven*_*kat 2 jquery html-table

我有 html,我需要动态地在表中附加一行,还需要在附加 div 类中捕获单击事件。如何实现这一点?

JavaScript:

$(document).ready(function() {

    $("#click").click(function() {
        $('table').prepend('<tr> <td>something3</td> <td> <a><div class="s"> s </a> </td></tr>');
    });


    $(".s").click(function() {
        alert("Ok");
    });

});
Run Code Online (Sandbox Code Playgroud)

HTML:

<input type="button" id="click" value="click"/>

<table width='100%'>
    <tr><td>something</td><td>else here</td></tr>
    <tr><td>something2</td><td>else here2</td></tr>
    <tr><td>something3</td><td>else here3</td></tr>
</table>
Run Code Online (Sandbox Code Playgroud)

Mat*_*att 5

请参阅该live()方法,它允许您为 DOM 中与给定选择器匹配的所有当前和未来元素绑定一个事件。

 $(".s").live('click', function(){
    alert("Ok");

 });
Run Code Online (Sandbox Code Playgroud)

jQuery 文档说:

将处理程序附加到与当前选择器匹配的所有元素的事件中,现在和将来


请注意,这个答案写于 2011 年 10 月,当时 jQuery 1.6.4 是王者。live()在 1.7 中被弃用,以支持使用on(). 等效的语法现在是;

 $(document).on("click", ".s", function(){
    alert("Ok");
 });
Run Code Online (Sandbox Code Playgroud)