使用 jquery 动态生成的列表项上的单击事件

2024-01-13

我有一个动态生成的列表,然后我单击该项目并传递index()到另一个函数。

问题是这个列表是动态填充的,当我这样做时我的代码没有响应click事件。但是,如果我在动态填充的元素之外添加几个静态 li 元素到列表中,那么这些静态元素就可以工作。这很奇怪。

一些代码:

这会动态创建列表:

function SetOpenRecentURL( openRecentURL ) {

 $('#recentProjectsId').append('<li>' + openRecentURL + '</li>')
 }

这是传递 Index() 的点击事件:

$('#recentProjectsId li').on('click', function () {
        var projIndex = $(this).index();
        console.log(projIndex)
        OpenProject()

    })

带有一些静态 Li 的 HTML

<div class="recentProjects" id="recentProjectsId">
<li>Test 1</li>
<li>Test 2</li>
        </div>

当我运行程序时,我的列表看起来很完美,包括静态 li 和动态列表,但我无法单击动态列表,只能单击静态列表。


当我运行程序时,我的列表看起来很完美,包括静态 li 和动态列表,但我无法单击动态列表,只能单击静态列表。

那是因为,您的代码绑定的方式click处理程序,它仅在绑定侦听器时绑定到页面中的元素。设置点击监听器只是有点不同 http://api.jquery.com/on/它将通过利用事件委托来发挥作用:

$('#recentProjectsId').on('click', 'li', function () {
    // snip...
});

通过指定一个额外的selector论证.on():

用于过滤触发事件的所选元素的后代的选择器字符串。如果选择器为空或省略,则事件始终在到达所选元素时触发。


请注意,您的 HTML 目前无效。<li>元素仅在以下范围内有效<ul>s, <ol>s, and <menu>s. http://www.w3.org/TR/html5/grouping-content.html#the-li-element

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 jquery 动态生成的列表项上的单击事件 的相关文章

  • Excel Add In - console.log 在哪里输出它的消息 - NodeJS

    我正在尝试使用 JavaScript API 创建 Excel 插件 但我不明白 console log 在哪里输出它们的消息 所有 Microsoft 文档都包含 console log 示例 但没有解释 console log 输出消息
  • Blueimp jQuery 文件上传,传递额外的表单数据

    我可以使用一些帮助 我已经设法使 blueimp jQuery 文件上传为我工作 但我仍然绝对是一个新手 我对 jQuery 等知之甚少 所以请尝试将其清晰明了地提供给我尽可能简单 我会尝试具体一点 好的 我想实现的是人们可以上传照片 并为
  • 代码点火器 JSON

    你好 我使用 codeigniter 然后我从控制器中的数据库中回显输出 然后在我的视图文件中执行以下操作 但它没有显示任何内容 S 我的模型文件 function forumList this gt db gt select oversk
  • 如何在 JavaScript 中构建一个计算数组中出现次数的对象?

    我想计算数组中某个数字出现的频率 例如 在Python中我可以使用Collections Counter创建一个字典 记录某个项目在列表中出现的频率 据我所知 JavaScript 是这样的 var array 1 4 4 5 5 7 va
  • 使用 easyXDM 调整 IFrame 大小

    我将 iFrame 代码提供给客户 以便他们可以显示我网站上的动态内容 我希望其页面上的 iFrame 能够调整大小以适合我的内容 我按照 easyXDM 网站的说明进行操作 但也许我遗漏了一些东西 我没有收到任何错误 但 iFrame 保
  • jQuery AJAX“multipart/form-data”未发送数据?

    我不知道为什么我无法让 jQuery 传递上传数据 因为 AJAX 对象似乎已正确配置 并且正在发送正确的 Content Type MIME Type 标头 我尝试了两种不同形式的请求 一种是在文字中包含 FormData 对象 另一种是
  • NodeJS 无法加载 css 文件

    所以我正在尝试制作一个 NodeJS 服务器 并且我尝试保留尽可能少的附加组件 但是 我遇到了一个问题 我似乎无法加载任何内容CSS我调用的文件HTML文件 该调用似乎确实由服务器处理 但它不会显示在浏览器中 My 网络服务器 js fil
  • Bootstrap:下拉菜单无法通过 jQuery 单击打开

    我正在创建一个包含多行的表 所有行都有一个 选项 按钮 该按钮应该显示下拉上下文菜单 为了使代码更短 我使用了一个div以便将其重用为上下文菜单的通用标记 我正在使用 Bootstrap 5 1 3 和 jQuery 3 6 0 以下是我的
  • 有没有办法在 TypeScript 2+ 中全局添加类型定义?

    我有一堆简单的 ts files 不是项目 即独立的 ts 脚本 他们使用一些 Node js 功能 TypeScript 和节点类型定义通过安装 npm install g typescript npm install g types n
  • 如何使用 selenium 获取 javascript 结果?

    我有以下代码 from selenium import selenium selenium selenium localhost 4444 chrome http some site com selenium start sel selen
  • 对数字和字母元素的数组进行排序(自然排序)

    假设我有一个数组 var arr 1 5 ahsldk 10 55 3 2 7 8 1 2 75 abc huds 我尝试对其进行排序 我得到了类似的东西 1 1 10 2 2 3 5 55 7 75 8 abc ahsldk huds 注
  • 比较 javascript 元素和 scala 变量的 Play 框架 Twirl 模板

    如下面的代码示例所示 我想比较 scala 辅助元素内的 javascript 元素 然而 即使存在元素 abcde 它也始终返回 false 除了使用标签之外 如何获取 scala 辅助元素内的 javascript 值 appSeq S
  • CryptoJS 和 Pycrypto 一起工作

    我正在使用 CryptoJS v 2 3 加密 Web 应用程序中的字符串 并且需要在服务器上使用 Python 对其进行解密 因此我使用 PyCrypto 我觉得我错过了一些东西 因为我无法让它工作 这是JS Crypto AES enc
  • IE6 丢失查询字符串

    我有一个使用 javascript 从查询字符串中获取值的页面window location 从网络服务器运行时效果很好 但如果我通过将其放在地址栏中使用 IE6 在本地运行它 c mysite index htm 网站创建的任何查询字符串
  • 单击react.js 切换列表的背景颜色

    我正在尝试创建一个具有以下功能的列表 悬停时更改列表项的背景颜色 单击时更改列表项的背景颜色 在单击的元素之间切换背景颜色 即列表中只有一个元素可以具有 clicked 属性 我已经执行了 onhover 1 和 2 功能 但无法实现第三个
  • Tween JS 基础知识之三个 JS 立方体

    我是 Tween JS 的新手 尝试使用 Tween 制作一个向右移动的简单动画 下面是我在 init 函数中的代码 我使用的是三个 JS var geometry new THREE CylinderGeometry 200 200 20
  • 加载 Ember.View 的内容后初始化 jQuery 插件

    DEBUG Ember VERSION 1 0 0 rc 6 ember js DEBUG Handlebars VERSION 1 0 0 rc 4 ember js DEBUG jQuery VERSION 1 9 1 控制器是一个Em
  • 使用 stopPropagation() 处理 React 事件委托

    我有一个 React 项目 应该可以放置在任何网站上 我的想法是 我托管一个 javascript 文件 人们放置一个具有特定 ID 的 div 然后 React 在该 div 中进行渲染 到目前为止 除了点击事件之外 这是有效的 这些事件
  • Angular 5 中 Observable.ForkJoin 的重复 Http 请求

    我有一个 Angular 5 应用程序 组件中包含以下代码 ngOnInit Observable forkJoin this highlightedInsight this insightService getHighlightedIns
  • html5 canvas 使用图像作为蒙版

    是否可以使用具有形状的图像作为整个画布或画布内图像的蒙版 我想将图像放置在画布中 并在图像上添加蒙版 然后将其另存为新图像 您可以使用 source in globalCompositeOperation 将黑白图像用作蒙版 首先 将蒙版图

随机推荐

  • 在Java中动态生成2个列表的非重复排列对

    我一直在查看很多关于 Java 排列的不同帖子 但没有一个符合我的要求 所以我决定发布 所以我有 2List
  • bash中用户输入日期格式验证

    所以我试图在 bash 中编写一个简单的脚本 要求用户输入日期 以下格式 YYYY dd mm 不幸的是 我陷入了第一步 即验证输入的格式是否正确 我尝试使用 日期 但没有成功 因为它返回实际的当前日期 我正在努力让这件事尽可能简单 感谢您
  • 如何禁用 SpreadsheetApp.addMenu 项

    The SpreadsheetApp AddMenu name array of entries 在电子表格的顶部栏中生成一个新菜单 或者 有getUI createMenu这会产生一系列项目 两者都工作得很好 不知道哪个更好 是否可以根据
  • 从 github 克隆的项目。赫罗库不起作用

    我将一个项目从 github 克隆到我的桌面上 我曾经在我的笔记本电脑上处理过它 然而 在笔记本电脑上 heroku 似乎不适用于这个应用程序 尽管我已经安装了它 第一个问题 heroku open gt No app specified
  • 如何在因子变量的多个子集上循环线性回归

    我正在尝试编写一个 for 循环 该循环在因子变量的 4 个不同级别上分别运行相同的回归 相同的因变量和自变量 4 次 然后我想保存每个线性回归的输出每个级别都有大约 500 行数据 我最初的想法是做这样的事情 但我对 R 和不同的迭代方法
  • 获取 HTTP 状态 400 - 客户端发送的请求在语法上不正确:使用curl 来 post/put json 请求

    我正在使用带有 xml json 对象的 spring MVC 并且收到以下错误 HTTP Status 400 The request sent by the client was syntactically incorrect 这是我的
  • Excel VBA 复制整个工作表并粘贴为值

    我需要创建一个 VBA 语句 它将复制整个活动工作表 然后粘贴为值 看起来很简单 但我不熟悉 VBA 它本质上是自动执行左上角的 单击 并复制 gt 粘贴为值 这是我正在尝试的 Sub CopyPasteSheetAsValues Copy
  • 使用类的参数数量错误或属性分配无效

    谁能解释一下为什么我在第 12 行收到此错误 很明显这是一个数组 为什么这样获取不到索引位置0的值呢 我真的需要那个额外的变量 arr 吗 Option Explicit Dim obj Set obj new ClsTest obj si
  • UIImagePickerController 编辑允许将 UIImage 锁定为最大尺寸 320x320

    Update 在 iPhone OS 3 0 中 整个 UIImagePickerController API 发生了变化 这个问题和答案应该考虑2 2 遗留代码 当使用 UIImagePickerController 并且您允许编辑图像时
  • 以编程方式将文件上传到 Box.com 的最佳方式

    我已经阅读了整个 Box com 开发人员 api 指南 并花了几个小时在网上研究这个特定问题 但我似乎找不到明确的答案 而且如果我要失败 我也不想开始创建解决方案错误的道路 我们有一个生产环境 一旦我们完成文件的处理 我们的生产软件系统就
  • 当子类中有重写函数时如何转换为超类

    超一流的Car和一个子类Jaguar被创建 功能信息 gt 无效在子类中重写了超类的函数 名为的实例theAuto类型的Jaguar已经被创建了 Problem 看来我不能向上投射theAuto的类型Car 请查看代码片段及其注释 clas
  • 在pythonplotly包中操作散点图中的图例

    我想使用 python 中的plotly 和特定标记颜色来绘制散点图 但当我成功做到这一点时 图例并不对应 现在 图例中的所有标签都具有相同的颜色 蓝色 我想要图例代表risks从我的数据中 颜色与代码中提到的相同 像这样 蓝色标记 中等低
  • jQuery:获取 jQuery 中隐藏元素的高度

    我需要获取隐藏 div 内元素的高度 现在我显示 div 获取高度并隐藏父 div 这似乎有点傻 有没有更好的办法 我正在使用 jQuery 1 4 2 select show optionHeight firstOption height
  • 在 iPad 中创建交互式视频 - 用于产品演示的应用程序

    我想创建需要在 iPad 本机应用程序上运行的视频 该应用程序需要通过 iPad 展示产品演示 它也需要具有互动性 我知道我们可以在 Flash 中执行这些操作 因为 iPad 不支持 Flash 我有什么选择 我很感激任何指导或提示 先感
  • 如何将 C# 中的“where”关键字与通用接口和继承一起使用

    我想要实现的是 声明一个泛型类 将 T 限制为实现 IMySpecialInterface 的类型 其中 X 不是已知类型 并让该类继承父类 举一个不正确的例子 public class MyClass
  • 层次结构查看器结果解释

    几天前 我在 Eclipse 中安装了 ADT 插件的更新 并且刚刚尝试了新的层次结构查看器工具 除了我花了一段时间才发现测量值仅在第一个 父 视图中计算之外 我还观察到每次显示的值都不相同 即使我的应用程序中没有任何更改 例如 我在模拟器
  • .NET 序列化排序

    我正在尝试使用 XmlSerializer 和继承序列化一些对象 但在排序结果时遇到一些问题 下面是一个与我设置类似的示例 public class SerializableBase XmlElement Order 1 public bo
  • C++ 从 Linux 访问 SQL Server

    我需要用 C 将一些数据从 Linux 写入 SQL Server 数据库 我找到了这个sqlapi com 但我认为 首先必须安装 ODBC 驱动程序并且必须工作 我关注了这个 adminlife net allgemein mssql
  • AVPlayer,播放/暂停状态通知?

    我正在寻找一种方法 以便在发生时准确收到通知AVPlayer开始播放 有 费率 属性 但目前我正在定期检查它NSTimer获取更新 我尝试了 KVO 但显然它不符合 KVO 标准 我知道有events https developer app
  • 使用 jquery 动态生成的列表项上的单击事件

    我有一个动态生成的列表 然后我单击该项目并传递index 到另一个函数 问题是这个列表是动态填充的 当我这样做时我的代码没有响应click事件 但是 如果我在动态填充的元素之外添加几个静态 li 元素到列表中 那么这些静态元素就可以工作 这