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事件

相关推荐
朱昆鹏3 小时前
开源 Claude Code + Codex + 面板 的未来vibecoding平台
前端·后端·github
lyrieek3 小时前
pgadmin的导出图实现,还在搞先美容后拍照再恢复?
前端
永远是我的最爱3 小时前
基于.NET的小小便利店前台收银系统
前端·sqlserver·.net·visual studio
从文处安3 小时前
「九九八十一难」第一难:前端数据mock指南(TS + VUE)
前端
Zhencode3 小时前
Vue3 响应式依赖收集与更新之effect
前端·vue.js
x-cmd3 小时前
[x-cmd] jsoup 1.22.1 版本发布,引入 re2j 引擎,让 HTML 解析更安全高效
前端·安全·html·x-cmd·jsoup
天下代码客3 小时前
使用electronc框架调用dll动态链接库流程和避坑
前端·javascript·vue.js·electron·node.js
weixin199701080164 小时前
【性能提升300%】仿1688首页的Webpack优化全记录
前端·webpack·node.js
冰暮流星4 小时前
javascript之数组
java·前端·javascript
晚霞的不甘4 小时前
Flutter for OpenHarmony天气卡片应用:用枚举与动画打造沉浸式多城市天气浏览体验
前端·flutter·云原生·前端框架