插入元素后如何让 jquery 将行为附加到元素

2024-01-03

我有一个通过 ajax 提交的表单,并返回一个更新的 html 块,其中包含我想通过 jquery 提交的更新表单。

我遇到的问题是,第一次单击“提交”时,事件被 jquery 捕获并且效果很好。当我对表单进行另一次更改而不刷新时,jquery 不会捕获该事件,而是发出标准的 post 请求。

插入元素后如何让 jquery 将行为附加到元素。

这是我的 jquery 代码。

$('.edit_clothing_product').submit(function(){
  var productDiv = $(this).parent();
  var action = $(this).attr('action');
  var formData = $(this).serialize();

  $.post(action, formData, function(data){
  productDiv.replaceWith(data);
  });
  return false;
 });

这是我返回的(精简的)HTML。

<div class="product">
    <form action="..." class="edit_clothing_product">
      <div class="color_combos">
        ...{form fields}
      </div>
      <a href=".../add_color_combo" class="add_color_combo">Add Color Combo</a>
    <input name="commit" type="submit" value="Save" />
  </form>
</div>

您需要重新附加您定义的提交事件处理程序,因为您要替换表单。您可以将整个事情设为可调用函数,以便可以多次调用它。

据我所知,live不适合submit- 您也许可以附上click事件处理程序与live但这不是exact.submit。我只想定义一个像这样的函数:

function handleForm( el ) {
$(el).submit(function(){
  var productDiv = $(el).parent();
  var action = $(el).attr('action');
  var formData = $(el).serialize();

  $.post(action, formData, function(data){
      productDiv.replaceWith(data);
      var form = data.find('form');
      handleForm( form );
  });
  return false;
 });
}

handleForm('.edit_clothing_product')

如果觉得懒的话可以附上.live('click', function() {} );到您的提交按钮,但如果没有单击就提交了,它将无法工作,因此它有其缺点。

$('.edit_clothing_product #submitButton').live('click', function(){
  var form = $(this).closest('form');
  var productDiv = form.parent();
  var action = $(form).attr('action');
  var formData = $(form).serialize();

  $.post(action, formData, function(data){
      productDiv.replaceWith(data);
  });
  return false;
 });

您也许还可以使用liveQuery但我从来没有真正使用过它。

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

插入元素后如何让 jquery 将行为附加到元素 的相关文章

  • jQuery AJAX 调用 Java 方法

    使用 jQuery AJAX 我们可以调用特定的 JAVA 方法 例如从 Action 类 该 Java 方法返回的数据将用于填充一些 HTML 代码 请告诉我是否可以使用 jQuery 轻松完成此操作 就像在 DWR 中一样 此外 对于
  • ajax推送服务器

    好吧 我最近写了一个ajax推送脚本 其中后端的php在等待某人更新时处于休眠状态 但是休眠的进程占用了大量的cpu 关于如何防止这种情况的任何想法 我猜我必须要么找到一个可以使用线程休眠的程序 要么用我不太熟悉的 python 或 c 编
  • 如何在 jQuery 中获取 ul 列表中 li 的第一个 href 链接

    我有以下清单 ul class tabs li a href testlink php First link a li li a href testlink2 php Second link a li ul 我想获取第一个链接的 href
  • 标签获取 href 值

    我有以下 html div class threeimages a img alt Australia src Images Services 20button tcm7 9688 gif a div class text h2 a hre
  • 如何以编程方式处理 JqGrid 事件?

    我正在使用JqG rid 的 ASP NET 包装器 http www trirand net demoaspnet aspx 我想以编程方式连接一些网格的处理程序events http www trirand com jqgridwiki
  • 在requestAnimationFrame中使用clearRect不显示动画

    我正在尝试在 HTML5 画布上做一个简单的 javascript 动画 现在我的画布是分层的 这样当我收到鼠标事件时 背景层不会改变 但带有头像的顶层会移动 如果我使用 requestAnimationFrame 并且不清除屏幕 我会看到
  • 如何将 Google Charts 与 Vue.js 库一起使用?

    我正在尝试使用 Vue js 库使用 Google Charts 制作图表 但我不知道如何添加到 div 这是我尝试做的 这是如何使用普通 javascript 添加图表 这是文档的代码示例 https developers google
  • 动态地将工具提示文本设置为 div 元素

    我正在尝试动态地将工具提示文本设置为容器 div 并对我刚刚添加到有序列表的每个 div 元素 elem Alias Status 使用 jQuery function addNewElement elem var li li li li
  • 将div设置为隐藏,延时后可见

    我试图在 X 时间后 也许甚至在随机时间之后 但现在我们只做固定时间 在黑色背景上出现一个黄色方块 function initialSetup if document getElementById yellow null document
  • 如何使输入字段和提交按钮变灰

    我想变灰这两件事 http doorsplit heroku com 歌曲输入字段和提交按钮 直到用户输入艺术家 有没有一种简单的方法可以通过 JQuery 来做到这一点 艺术家输入字段的id是 request artist 你可以这样做
  • 回发后刷新时提示确认表单重新提交。我做错了什么?

    我有一个以空白 默认状态启动的仪表板 我让用户能够将保存的状态加载到仪表板中 当他们单击 应用 按钮时 我运行以下代码 function CloseAndSave var radUpload find radUpload1ID var in
  • 提交表单并重定向页面

    我在 SO 上看到了很多与此相关的其他问题 但没有一个对我有用 我正在尝试提交POST表单 然后将用户重定向到另一个页面 但我无法同时实现这两种情况 我可以获取重定向或帖子 但不能同时获取两者 这是我现在所拥有的
  • FireFox 中的自动滚动

    我的应用程序是实时聊天 我有一个 Div 来包装消息 每条消息都是一个 div 所以 在几条消息之后 我的 DOM 看起来像这样 div div Message number two div div div div
  • 如何更改此 jquery 插件的时区/时间戳?

    我正在使用这个名为 timeago 的插件 在这里找到 timeago yarp com 它工作得很好 只是它在似乎不同的时区运行 我住在美国东部 费城时区 当我将准确的 EST 时间放入 timeago 插件时 比如 2011 05 28
  • 如何仅在最后一个
  • 处给出透明六边形角度?
  • 我必须制作这样的菜单 替代文本 http shup com Shup 330421 1104422739 My Desktop png http shup com Shup 330421 1104422739 My Desktop png
  • 按 Esc 按键关闭 Ajax Modal 弹出窗口

    我已经使用 Ajax 显示了一个面板弹出窗口 我要做的是当用户按 Esc 键时关闭该窗口 这可能吗 如果有人知道这一点或以前做过这一点 请帮助我 Thanks 通过以下链接 您可以通过按退出按钮轻松关闭窗口 http www codepro
  • Javascript/Jquery:确定用户是否使用鼠标滚轮、滚动条或键盘滚动

    我正在尝试让用户界面正常工作 如果他们使用鼠标滚轮 我需要让它以一种方式滚动 如果他们使用滚动条 我需要让它以另一种方式滚动 如果他们使用键盘 我需要让它以另一种方式滚动 我相信滚轮和滚动条都充当鼠标事件 但是当单击滚动条时我无法让 jav
  • 如何在 AngularJS 循环内使用标签

    所以我在里面ng repeat像这样 li li
  • Spring Rest 和 Jsonp

    我正在尝试让我的 Spring Rest 控制器返回jsonp但我没有快乐 如果我想返回 json 但我有返回的要求 完全相同的代码可以正常工作jsonp我添加了一个转换器 我在网上找到了用于执行 jsonp 转换的源代码 我正在使用 Sp
  • CSS 是否有不等于选择器?

    CSS中有类似 不等于 的东西吗 例如 我有以下代码 input 但对于某些输入 我需要将其作废 我想通过将类 reset 添加到输入标签来做到这一点 例如

随机推荐

  • TPL Dataflow,Post() 和 SendAsync() 之间的功能区别是什么?

    我对通过 Post 或 SendAsync 发送项目之间的区别感到困惑 我的理解是 在所有情况下 一旦一个项目到达数据块的输入缓冲区 控制权就会返回到调用上下文 对吗 那么为什么我需要 SendAsync 呢 如果我的假设不正确 那么我想知
  • 在 R 中使用 t.test() 时出错 - 没有足够的“x”观测值

    我尝试进行 t test 但它给了我这样的错误 在 R 中使用 t test 时出错 没有足够的 x 观察值 数据只有数值 没有 NA 组的比例是10比35 如何避免这种情况 先谢谢您的帮助 t test data Vrajdeb data
  • spring tx:advice和spring aop切入点的区别

    我是 Spring 新手 具有 Hibernate 的工作知识 我的工作是使用 Spring 声明式方法来实现事务 在 Google 的帮助下我成功完成了 感谢 Google 但无法清楚地理解我在 application context x
  • 如何正确配置 Julia 便携式或独立式

    如何正确配置Julia 便携式或独立式 https julialang s3 julialang org bin winnt x64 1 5 julia 1 5 0 win64 zip 对于外部存储 USB 驱动器发生的一切 添加 更新软件
  • libpcap 还是 PF_PACKET?

    我知道这个问题已经讨论过很多次了 我应该使用 libpcap 还是 PF PACKET 数据链路套接字 来捕获数据包 根据我的研究 几乎所有地方都建议使用 libpcap 而不是 PF PACKET 主要是因为它的可移植性 然而 对于我当前
  • 替换 Flutter 中的片段等小部件

    我是颤振新手 我有一个带有 2 个子小部件 Android 中的 2 个片段 的应用程序 当我单击 WidgetA 中的下一个按钮时 我想将该小部件替换 或推送 到 WidgetChildA 中 就像 Android 中的推送 或替换 片段
  • 什么开源消息队列软件可以提供严格排序的耐用性?

    我们需要的是实际上作为队列工作的 RabbitMQ并且不这样做 http www rabbitmq com faq html message ordering 消息应该保留在队列的头部 直到客户端明确地将它们出队 这似乎是一个非常简单的场景
  • Asp Net Core Web 推送通知

    主要目标是向站点添加发送 Web 通知的功能 以弹出系统通知 以使用 Html5 Push API 和服务工作人员提醒用户 不使用 SignalR 它只能在打开站点时运行客户端脚本 如前所述 还应该能够在网站关闭时发送通知here http
  • CMake - 在 Linux 中编译,在 Windows 中执行

    我有一个具有 Linux 依赖项的大型代码库 我想使用 CMake 将我的代码编译成可以在 Windows 上运行的可执行文件 即我希望 CMake 生成一个 exe 文件或类似性质的文件 我尝试过使用CMake网站上提供的解决方案 htt
  • Android Studio 本身不显示“数据库检查器”

    我使用的是4 2版本 这是Android Studio的最新版本 正如文档中所述 我在 视图 gt 工具窗口 中搜索了数据库检查器 但它没有出现在那里 我如何找到数据库检查器 任何帮助将不胜感激 Thanks in advance 我刚刚解
  • 为什么 doctests 在使用 Sphinx 的 `make doctest` 运行时会引发 NameError?

    我有一个简单的带有 doctest 的函数 http git io Tq2fTw 当与 Sphinx 一起运行时make doctest 给我以下错误 File scheemey rst line in default Failed exa
  • CodeIgniter头像上传

    这是新的 HTML
  • 将参数作为 std::string 或 const std::string& 传递? [复制]

    这个问题在这里已经有答案了 可能的重复 在 C 中 按值传递还是按常量引用传递更好 https stackoverflow com questions 270408 is it better in c to pass by value or
  • 在这种情况下我可以忽略 C4251 警告吗?

    我明白为什么在编译代码时出现 C4251 警告 如中所述here http msdn microsoft com en us library esew7y1w aspx 我的问题是 如果可访问的导出类成员来自 STL 我们可以忽略 C425
  • 在所有网页上保留我的页眉和页脚?

    我已经完成了网站主页的设计 现在已经开始处理其他一些页面 我希望页眉和页脚在每个页面上显示相同 我已经尝试过这种基本方法来链接构成第二个 HTML 文件中的页眉 页脚的相同样式表 已在主页中使用 我现在明白这是行不通的 服务器端脚本语言是我
  • 向后台脚本发送消息

    我正在尝试实现一个屏幕共享 Web 应用程序 该应用程序将使用desktopCapture Chrome API 在网页上显示用户屏幕 我已经创建了 chrome 扩展 并在后台运行了一个事件侦听器 我的问题是 当我尝试从网页向扩展程序发送
  • 为什么布尔字段在 Hive 中不起作用?

    我的配置单元表中有一个数据类型为布尔值的列 当我尝试从 csv 导入数据时 它存储为 NULL 这是我的示例表 CREATE tABLE if not exists Engineanalysis EngineModel String Eng
  • 绑定到嵌套属性仅显示列表中的第一项

    我正在尝试将 NET 4 5 中的 C Winforms 中的 ListBox 控件绑定到具有我希望用于 DisplayMember 的嵌套属性的对象列表 它有点有效 除了当我将 DisplayMember 设置为嵌套属性时 列表框仅显示一
  • 如何将 TForm 作为参数传递给 DLL?

    我想制作使用 tform 作为参数的 dll 简单的计划是如果将该表单传递给 dll 则 dll 文件返回包含组件名称的数组 可以将 tform 作为参数传递吗 您的进程中很可能有两个 VCL 实例 一个用于主机 exe 另一个用于 DLL
  • 插入元素后如何让 jquery 将行为附加到元素

    我有一个通过 ajax 提交的表单 并返回一个更新的 html 块 其中包含我想通过 jquery 提交的更新表单 我遇到的问题是 第一次单击 提交 时 事件被 jquery 捕获并且效果很好 当我对表单进行另一次更改而不刷新时 jquer