html中在某个父元素动态生成列表子元素,添加点击事件,利用事件委托

在web的html中,假设我要设计一个列表,并且每个列表点击后可以携带参数跳转到另一个网址

我们一般想当然通过for循环,然后在每个列表标签div内层或外层包裹一个a,然后使得这个a标签的href设置成对应携带参数的网址,比如:

javascript 复制代码
<div id = "listIdDiv"><div>


var str = "";
for (var i = 0 ;i< list.length ; i++){
  str += '<a id="itemCard" href = "/list/detail?id=' + i + '"><div>列表</div></a>'
}
$("#listIdDiv").html(str);

可结果发现,点击列表既然没反应???

解决方案:

html中在某个父元素动态生成列表子元素,添加点击事件,利用事件委托

javascript 复制代码
    $("#listIdDiv").on('click', '.itemcard', function(event) {  
        // 这里 'this' 指向被点击的 .itemcard 元素  
        var url = $(this).find('a').attr('href'); // 假设每个 .itemcard 内都有一个 <a> 标签,其 href 属性包含要导航的 URL  
        if (url) {  
            window.location.href = url; // 导航到该 URL  
        } else {  
            console.error('No href attribute found on the <a> element inside the clicked .itemcard.');  
        }  
    });  

//这个要写在生成后,或前面,在for循环前或后

最后才能给每个列表绑定上相关的a标签的href事件

相关推荐
明月_清风7 小时前
Deno 终局来了:从挑战 Node 到被 Cloudflare 收编
前端·后端·node.js
Csvn8 小时前
框架性能优化
前端
回眸&啤酒鸭10 小时前
【回眸】OpenSwarm 多智能体协作系统实战指南
大数据·前端·人工智能
用户693717500138410 小时前
2026,程序员的时代拐点到了
android·前端·后端
大龄秃头程序员10 小时前
一次 iBeacon + BLE 无感解锁方案的实现记录
前端
小兔子10 小时前
Python 的 GIL 与 free-threading:3.13 之后「去 GIL」走到哪一步了
前端
IT_陈寒10 小时前
SpringBoot自动配置差点让我加班到凌晨
前端·人工智能·后端
guslegend12 小时前
脚手架原理与本地调试:从 bin 软链接到 npm link
前端·npm·node.js·脚手架·前端工程化
小宋102112 小时前
A2UI从零实战:Agent安全生成交互界面与事件回传
javascript·人工智能·安全·交互
大包子12 小时前
structuredClone vs lodash.cloneDeep:核心差异与选型指南
javascript·vue.js