使用 jQuery 为 AJAX 动态添加的 HTML 元素绑定事件

页面有些元素是 AJAX 动态添加的,要给这些元素绑定事件,可以使用 jQuery 中的 on(events,[selector],[data],fn)。

  • events:一个或多个用空格分隔的事件类型和可选的命名空间,如”click”或”keydown.myPlugin” 。
  • selector:一个选择器字符串用于过滤器的触发事件的选择器元素的后代。如果选择的< null或省略,当它到达选定的元素,事件总是触发。
  • data:当一个事件被触发时要传递event.data给事件处理函数。
  • fn:该事件被触发时执行的函数。 false 值也可以做一个函数的简写,返回false。

简单示例:
AJAX 请求数据后,在表格中添加相应数据,并给它们绑定 click 事件。

html:
<table>
    <thead>
        <th>id</th>
        <th>value</th>
    </thead>
    <tbody id="tbody">

    </tbody>
</table>
js:
/*response = {
    code: 1,
    data: [
        { id: 1, value: 1},
        { id: 2, value: 2},
        { id: 3, value: 3}
    ]
} // 后台传回的数据 */

// 添加数据到 table 中
$.post('请求 url', function (response) { // response: 后台返回的数据
    $(response.data).each(function () {
        $('#tbody').append('<tr>'+ this.id +'<td></td><td>'+ this.value +'</td></tr>');
    });
})

// 给按每条记录定 click 事件:点击 tr 时,会在控制台打印出 tr 内容。
$('#tbody').on('click', 'tr', function () {
    console.log(this);
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值