通过css循环添加点击事件

本文介绍了如何在HTML页面中使用CSS和JavaScript为每个循环生成的表格行添加删除按钮,并处理点击事件,特别关注了在频繁刷新场景下的事件绑定和解除操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需求

在实际的场景中,我们有时候不得不使用最原始的html,css,js实现某些业务需求。
下面将会讲到循环渲染的表格,通过css给每行删除按钮添加点击事件。
在这里插入图片描述

实现

1.通过循环渲染html页面。
2.通过css找到删除按钮,添加点击事件。
3.点击事件逻辑处理。

循环生成的html内容如下

`
<div >
  <div class="gf-form btn-update-div-${this.panel.id}" value="${rowIndex}">
    <button class="btn btn-danger btn-small" >
      <i class="fa fa-remove"></i>
    </button>
  </div>
</div>
`

Tips:
这里是通过模板字符串生成的html内容,需要注意的点给每行的删除按钮动态添加了当前唯一标识符this.panel.id,以保证在同一页面,多个循环生成表格的按钮不会互相影响。
value是当前行号。

通过css添加点击事件

  getButtonClick() {
    const dataDiv = '.btn-update-div-' + this.panel.id;
     $(dataDiv).each((i, item) => {
      //index代表每行绑定的value值,和此处的i值其实相同。
       const index = Number(item.getAttribute('value')) || 0; 
       console.log(item,'item')     //item 代表了每一行
         $(item).unbind('click').click(e => {
           console.log(i,'i-index', index)
           this.scope.ctrl.updateData.splice(index, 1);
         });
     });
  }

点击第一行删除效果如下
在这里插入图片描述

Tips:
此处主要用到each方法循环得到每一项添加的点击事件。
当页面频繁刷新情况下,则必须先unbind(‘click’) 去除绑定的click事件,否则会触发多次。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值