JQuery - on()-方法/动态处理程序

2023-12-11

我有一份等候名单和一份参与者名单。管理员可以通过单击等待列表中用户名旁边的 div 将用户添加到参与者列表中。

单击 div 将某人添加到参与者列表后,将调用 ajax 请求 -> 该请求会更新数据库中用户的状态,并且 - 如果 ajax 请求成功 - 将用户添加到参与者列表而不重新加载页。所以看起来列表将从数据库中刷新,但用户是通过 JQuery 添加到列表中的,数据库操作是在后面完成的。

此外,管理员可以从参与者列表中删除用户。这种情况发生在 div .event_list_cancel 上 - 当管理员单击该用户时,该用户将从参与者列表中删除,并再次添加到等待列表中。奇怪的是,当我最初进入页面时,我只能将用户添加到列表中/从列表中删除用户。当我例如将用户从等待状态移至参与者列表,然后通过单击参与者列表中的“delete-div”将其更改回来,没有任何反应。如果我刷新网站并且所有内容都将从数据库中生成 - 那么它就可以工作。我希望 JQuery on() 方法能够解决这个问题,因为添加/删除后的元素将在 DOM 加载之前存在,但什么也没有发生......我该如何解决这个问题?

我希望它的解释不会令人困惑。

谢谢!!!


您应该查看文档并阅读有关的部分直接和委托事件.

基本上,如果你使用on像这样:

$(".some_button").on("click",function(){});

然后这个事件将直接绑定到与您的选择器匹配的每个元素。如果将新元素添加到与选择器匹配的 DOM 中,则不会添加它们。

但是,如果您像这样使用它:

$("#my_wrapper").on("click",".some_button",function(){});

那么该事件实际上将附加到#my_wrapper,当触发时,将检查目标以查看它是否与您的选择器匹配。这意味着添加到的任何元素#my_wrapper即使它们是在事件绑定后添加的,仍然会受到影响。

这种用法on正在替换旧功能live and delegate。如果您需要更好地理解,阅读有关它们的文档也可能很有用。

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

JQuery - on()-方法/动态处理程序 的相关文章

随机推荐

  • 如何在 R 中将 `foreach` 和 `%dopar%` 与 `R6` 类一起使用?

    我在尝试使用时遇到了问题 dopar and foreach 与一个R6班级 四处搜索 我只能找到两个与此相关的资源 一个未答复所以问题和一个开放的GitHub问题 on the R6存储库 在一条评论 即 GitHub 问题 中 建议通过
  • Android - 一个选项卡中的多个片段

    我在网上搜索了很多有关在一个操作栏选项卡中包含多个片段的可能性的信息 这个问题最接近我的需求 但代码不起作用 是否有另一种可能性可以在一个选项卡中包含多个片段 这是StartActivity public class StartActivi
  • IIS 7.0 错误 HTTP 错误 500.19 - 内部服务器错误(错误代码 0x80070003)

    我的 Windows 2008 Server 上运行着 IIS7 它非常适合我之前托管的网站和文件夹 现在我尝试托管一个包含两个子文件夹的文件夹 子文件夹包含一些 图片 我已正确设置站点文件夹的 IIS IUSRS 权限 当我尝试浏览时 我
  • 常量值无法转换为 int

    我不明白为什么第 5 行无法编译 而第 4 行却可以 static void Main string args byte b 0 int i int 0xffffff00 b ok int j int 0xffffff00 byte 0 e
  • MVC 中的模型应该如何构建? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我刚刚掌握 MVC 框架 经常想知道模型中应该包含多少代码 我倾向于拥有一个具有如下方法的数据访问类 public function CheckUsername connection us
  • 在上传之前调整从图库或相机拍摄的图像的大小

    我的网站中有一个表单 允许用户上传照片 我的 Android 应用程序使用 WebView 来允许用户访问该网站 单击上传按钮后 应用程序允许用户在图库中现有的图像之间进行选择 或者拍摄新照片并上传该图像 我为此使用的代码是 showAtt
  • Cosmos DB - 图形 API - 导出 graphSON 并尝试使用迁移工具导入它

    我在新图中插入了一些顶点和边 我已将生成的 grapSON 保存在 json 文件中 然后我尝试使用迁移工具将该 json 文件导入到新图表中 它只起到了部分作用 我有一个带有顶点的新图 但它们没有这样的属性或边 id c39f435b 3
  • 如何停止由 Win32::Daemon 启动的 Win32 服务?

    我可以使用以下脚本在 Windows 10 Strawberry Perl 版本 5 30 1 上成功启动 Win32 服务 package Win32 XYZService use feature qw say use strict us
  • 用 execv 调用 'ls'

    我是系统调用和 C 编程新手 正在完成我的大学作业 我想调用 ls 命令并让它打印目录 我所拥有的 我添加了注释 以便您可以看到我通过每个变量看到的内容 int execute command cmd char full path 50 f
  • 在 C# 中是否有一种简单的方法可以通过扩展名来确定文件是什么?

    在 C 中是否有一种简单的方法可以通过扩展名来确定文件是什么 例如 如果我传递文件扩展名 txt 那么它将返回 文本文档 或者如果我传递 pdf 它将返回 Adobe Acrobat Reader 我看到 Windows 资源管理器中内置了
  • SQL 语句与 CASE 连接

    我在 MS ACCESS 中执行 SQL CASE IF ELSE 时遇到以下 3 个表的问题 但我不知道如何开始 表 A 注册 Name Desc Amount Year NameA JAN NOV 100 00 2015 NameA B
  • ng-单击复选框不更新表单的 $pristine 属性

    AngularJS 第一次更新隐藏文本时 表单的 pristine 属性不会更新 我有一个 AngularJS 表单 我想知道表单的任何字段是否已更新 当复选框更新时 相应的 pristine属性未更新 所以我添加了一个隐藏的文本框 它绑定
  • 将模型导入到 Three.js - 性能

    对于从要在 Three js JavaScript 应用程序中使用的文件加载 3D 模型的性能 尤其是在 Blender 中生成模型的情况 是否有一种好的 推荐的方法 我目前有以下工作流程 在 Blender 中创建模型 使用 Three
  • 如何使用C在Linux中获取已安装驱动器的卷名?

    我目前正在编写程序 该程序必须显示有关已安装闪存驱动器的信息 我想显示完整空间 可用空间 文件系统类型和卷名称 但问题是 我找不到任何可以获取卷名称 卷标签 的 API 有没有任何api可以做到这一点 附注我正在通过的完整空间 可用空间和文
  • Redis PubSub 订阅机制是如何工作的?

    我想创建一个发布 订阅基础设施 其中每个订阅者都将收听多个 例如 100k 频道 我认为使用 Redis PubSub 来实现此目的 但我不确定订阅数千个频道是否是最佳实践 为了回答这个问题 我想知道 Redis 中的订阅机制如何在后台工作
  • docker-compose - 重启策略 - 不保留图像中的更改

    让我们考虑以下示例 version 3 services some service build restart unless stopped This docker compose工作正常 但是在重新启动期间 它会保留先前运行 重新启动之前
  • 如何从排序列表中选择小于给定整数的元素?

    我有一系列素数 例如0 到 1000 之间的整数 primes 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 1
  • 具有 URL 值的 HTML 标记属性的完整列表?

    除了以下属性之外 是否还有以 URL 作为值的 HTML 标记属性 href标签上的属性 a area src标签上的属性 img a
  • 将字符串转换为日期时间 vb.net

    我需要将字符串转换为日期格式 要求是如果选择当前月份 则日期应为 getdate 如果选择任何其他月份 则应选择该月的第一个月 输入的数据是 2010 年 1 月 2010 年 2 月 等 但它应该作为 01 01 10 或 02 01 1
  • JQuery - on()-方法/动态处理程序

    我有一份等候名单和一份参与者名单 管理员可以通过单击等待列表中用户名旁边的 div 将用户添加到参与者列表中 单击 div 将某人添加到参与者列表后 将调用 ajax 请求 gt 该请求会更新数据库中用户的状态 并且 如果 ajax 请求成