使用 JQuery Ajax 提交表单会导致多个请求(和提交)

2024-02-24

我遇到了 JQuery 表单提交问题,并且在任何地方都找不到答案。如果有人能够阐明这一点,我们将不胜感激。

问题:我第一次提交表单时,效果很好。但如果我第二次提交相同的表单,它会发送 2 个请求,第三次会发送 3 个请求,依此类推。

Script:

    function postInvokeFunctionForm(functionId){
      var formId = "#"+functionId+"-form";
      var formUrl = "invokeFunction.html?functionId="+functionId
      $(formId).submit(
        function(){
            $.ajax({
                type: 'POST',
                url: formUrl,
                data: $(formId).serialize(),
                success: function (data){
                 alert('successfully invoked function!' + data);
                }
            });
            return false;
           }
        );
   }

动态生成的表单:

<form action="" method="post" id="xxxxx-form" class="invokeFunctionForm">
<input name="functionId" value="xxxxx" readonly="readonly" style="visibility: hidden;" type="text">
<input value="Invoke" onclick="postInvokeFunctionForm(xxxxx);" type="submit">
</form>

这显然是不可取的。我能想到的唯一解决方案是在提交后重新渲染(动态生成的)表单,但这将是一项昂贵的操作。

这是 JQuery ajax 提交的已知问题还是我遗漏了一些明显的东西?是否可能发生某种形式的递归?

Thanks.


每次单击按钮时,代码都会调用您的函数。在该函数中,该行$(formId).submit(...);正在将事件绑定到表单的提交操作。每次单击时都会发生这种情况,从而向表单添加多个“提交”事件。你需要unbind http://api.jquery.com/unbind/先行动。所以你可以打电话$(formId).unbind('submit').submit(...);反而。

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

使用 JQuery Ajax 提交表单会导致多个请求(和提交) 的相关文章

  • 是否可以使用 Javascript 读取 PHP 会话?

    我正在使用 cakePHP 1 26 在控制器中 我得到了一个包含以下代码行的函数 this gt Session gt write testing user this gt Session gt read testing 现在系统编写了一
  • 如何检查jquery数据表中的每个复选框?

    我有一个第一列带有复选框的表格 我使用 jQuery DataTable 插件显示我的表格 我制作了 2 个链接来选择 取消选择每个复选框 这是选择全部的一个 a href Select all a 和 JavaScript functio
  • 在外部单击时关闭弹出 div

    我有一个弹出 div 仅在单击特定按钮时显示 单击同一按钮时它甚至会隐藏 我的问题是 我还想在单击外部任何地方时隐藏 div 我无法这样做 因为弹出 div 位于主包装类内部 并且无法通过在包装类上使用 click 事件并使其隐藏来做到这一
  • Javascript / jQuery - 转换特殊 html 字符

    我有一个pre元素中包含一些 html 代码 该代码中有特殊字符 例如 lt 所以它不会破坏页面 然后我有一个 javascript 函数 它获取此 pre 元素的内容 突出显示它 使用 codemirror 并用突出显示的文本替换元素内容
  • 重新安装后使用 pandas dataframes 时出现问题

    我已经重新安装了 Python 和 Anaconda 现在面临以下问题 在我将 pkl 文件加载到数据帧并尝试 查看 该文件后 如下所示 df pd read pickle example pkl df 我收到错误 AttributeErr
  • 如何使用 jQuery 获取表格单元格值?

    我正在尝试找出如何使用 jQuery 获取每行表格单元格的值 我的桌子看起来像这样 table tr th Customer Id th th Result th tr tr td 123 td td td tr tr td 456 td
  • jQuery - 检测鼠标是否静止?

    我想知道是否有一种方法可以检测 jQuery 中鼠标是否空闲了 3 秒 是否有我不知道的插件 因为我不相信有一个原生的 jQuery 方法 任何帮助将非常感激 您可以收听mousemove事件 每当发生时启动超时并取消任何现有超时 var
  • Angular 完成渲染后运行 jQuery

    我正在尝试使用 angularjs 中的 json 对象填充个人资料页面 我正在为此使用指令 我有一个配置文件指令 其中包含配置文件部分指令作为子项 配置文件部分具有作为子级的配置文件子部分指令 我需要在 Angular 开始编译之前和 A
  • 通过jquery传递搜索参数

    我有一个表单 如果用户输入搜索查询 其参数应通过 jquery 传递 并在获取结果后将结果加载到 div 容器中 由于我不太熟悉 jquery 我该怎么做 html currently the data is being displayed
  • 智能位置表单字段

    我的用户注册表单上有一个文本字段location 我本质上希望这个字段能够根据 Google 地图 或同等地图 进行验证 只允许有效位置通过 最好采用类似的格式滑铁卢 伦敦 or 伦敦 英国 要求 除了位置名称之外 我还想返回该位置中心的坐
  • 将按键和焦点事件附加到 contenteditable div 内的元素

    我想附上keypress and focusoutcontenteditable 内段落的事件处理程序div 下面的代码似乎不起作用 div p Test p p Test p p Test p div p1 bind keypress f
  • ExitFullScreen 不起作用 + 无论如何要按键盘单击按钮?

    我的浏览器 Google Chrome 版本 33 0 1750 154 m Script function exitFullscreen var element document documentElement if element mo
  • 使用 jQuery 的 javascript 关联数组长度

    我正在使用 javascript 关联数组 例如 var testarray testarray one 1 testarray two 2 testarray three 3 我也在旁边使用jquery 如何使用 jquery 或任何其他
  • 动态地将 .on() 方法与事件映射绑定

    我使用此语法来确保事件绑定动态添加li元素 ul list on click li function do something 我尝试使用这样的事件映射来存档相同的内容 ul list hammer css hacks false on s
  • 使用 jQuery 解析无效的 HTML,而不添加到 DOM?

    我正在开发一个使用 HTML 模板的 jQuery 插件 最终用户可以传入一个最简单级别的模板 如下所示
  • XMLHttpRequest 上传进度事件在 Firefox 10.0.2 中不起作用

    我正在尝试创建一个带有进度条的基于ajax 的上传表单 这是我的代码 其中的上传部分 xhr new XMLHttpRequest xhr upload addEventListener progress function e if e l
  • Skrollr 添加空白

    我已经尝试了一切 我在谷歌上阅读了 4 5 页试图找到适合我的修复程序 已经筋疲力尽了 即使我使用 skrollr 示例 我的问题仍然存在 不是说他们做错了什么 我知道我只是没有正确理解它 因此 我上传了一个演示 仅在移动设备上展示这个尴尬
  • 通过ajax执行后期操作时如何克服CORS重定向问题?

    我可以通过外部登录表单中的 post 方法类型提交表单来登录 roundcube 实例 托管在另一台服务器上 我收到此错误 通过 ajax 签名时 XMLHttpRequest 无法加载https 192 168 0 7 mail http
  • jQuery - 未捕获类型错误:对象 # 没有方法“parent”

    我的代码有问题 Chrome代码光谱仪说第21行有问题 问题如下 Uncaught TypeError Object
  • 将日期参数传递给对 MVC 操作的 ajax 调用的安全方法

    我有一个 MVC 操作 它的参数之一是DateTime如果我通过 17 07 2012 它会抛出一个异常 指出参数为空但不能有空值 但如果我通过01 07 2012它被解析为Jan 07 2012 我将日期传递给 ajax 调用DD MM

随机推荐

  • Quartz.net 中每次执行后 JobData 不会持久化

    我有一份工作想要跟踪 50 次最新运行 由于某种原因 状态似乎没有存储在我的简单原型中 PersistJobDataAfterExecution public class ApiJob IJob private const string J
  • 使用 jsTree 进行延迟加载

    我试图在 jtree 扩展时动态加载它们的节点 我发现的小文档位于末尾这一页 http www jstree com docs json 我找到了一些解决方案 可以使用类似的循环逐一创建节点this one https stackoverf
  • 冬眠,偷懒还是不偷懒? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 I have entity A 与多对多关系entity B 所以表格布局是 A AB mapping table B 获取实体A的对象 我打电
  • 仅当使用reactJS 城市名称不匹配时才显示错误消息

    我有一个搜索框 当用户输入 5 个或更多字符时 它应该在搜索框中显示完整地址 IT 工作正常 但现在的问题是当城市名称不匹配时 它应该显示错误消息 问题是 匹配的城市名称和不匹配的城市都显示错误消息 我该如何解决这个问题 请问有人可以帮我吗
  • 为什么在删除实体时会出现 StaleObjectStateException?

    在我的 Spring Boot Web 应用程序中 我有一个控制器 它提供了一种从数据库中删除实体的方法 该方法又调用 DAO 类 然而 当我打电话时entityManager remove entity 我收到一个StaleObjectS
  • SQL Server ON DELETE 触发器

    我正在尝试创建一个基本数据库触发器 当删除database2 table2 中的行时 该触发器有条件地从database1 table1 中删除行 我是触发器新手 希望学习实现此目标的最佳方法 这是我到目前为止所拥有的 建议 CREATE
  • 如何使用 GDB 调试共享对象库中的函数?

    我正在尝试验证共享对象库中函数的功能 在带有main函数 我会简单地start程序和 gdb 会自动在 main 上设置断点 但这显然在这里不可用 假设我有一些add c long add long x long y return x y
  • 在 Xamarin.Forms 中处理 Android 推送通知操作

    所以我只是在我的 Xamarin Forms Android 应用程序中实现了 FCM本指南 https learn microsoft com en us azure app service mobile app service mobi
  • 写“::namespace::identifier”和“namespace::identifier”有什么区别?

    我在代码中看到了这两种方法 您能解释一下两者之间有什么区别吗 我认为它与 C 完成名称空间查找的方式有关 您能否也提供一些有关此的信息 或者可能是一个好的文档的链接 谢谢 Example include
  • Is-大括号-可构造类型特征

    如何检查是否特定类型typename T可以从参数构造typename Args以这样的方式T Args 我知道std is constructible lt T Args gt 类型特征来自
  • 多行引导行

    我希望表单字段在台式机和平板电脑上的放置方式不同 目前 桌面上一切都很好 我身边有两个类似的案例 在第一个中 我有这样的内容 输入字段位于 div 中 div class row div class col md 3 col sm 6 di
  • ZF2:模块无法初始化

    我正在尝试开始使用 ZF2 但在编写教程 在 ZF 网站上 中的代码时遇到问题 我的代码 Module php
  • 如何使用 Android 版 Google Places API 获取 opening_hours

    我正在与适用于 Android 的 Google 地方信息 API https developers google com places android api 我想访问营业时间信息 我已经搜索并在Google Places API 网络服
  • 使用 boost::shared_ptr 有哪些潜在危险?

    使用时有哪些方式可能会搬起石头砸自己的脚boost shared ptr http www boost org doc libs release libs smart ptr shared ptr htm 换句话说 我在使用时要避免哪些陷阱
  • 在 Google Charts 中包含带有 MathJax 的 LaTeX 符号?

    在生成的树形图中谷歌图表 https developers google com chart interactive docs gallery orgchart我想包含使用 MathJax 生成的 LaTeX 符号 使用通常在 HTML 文
  • Keras 的 OrderedEnqueuer 是否保证了批次的顺序?

    我有一个习惯keras utils sequence它以特定 且关键 的顺序生成批次 但是 我需要跨多个核心并行化批量生成 名字是不是 OrderedEnqueuer 意味着结果队列中批次的顺序保证与原始队列的顺序相同keras utils
  • Jupyterlab 最小化导航窗格

    在 JupyterLab 中 屏幕左侧的导航窗格非常有用 但占用了大量空间 有没有办法隐藏它 以便我们可以使用导航器窗口的整个宽度查看笔记本 我自己的问题的答案是 您只需单击 文件 垂直选项卡即可 此操作会切换导航窗格
  • 导入错误:在 Heroku 上部署时没有名为“解耦”的模块

    我试图从heroku cli 在heroku 上部署我的django 项目 所以我创建了一个应用程序然后运行git push heroku master从项目目录 然后我得到了错误 remote gt python manage py co
  • jQuery UI 可拖动并在拖动事件上添加类

    我正在尝试使用 jQuery UI 将一个类添加到可拖动事件 但是 我编写的以下代码未按预期工作 function ul sortable div draggable draggable start function event ui ui
  • 使用 JQuery Ajax 提交表单会导致多个请求(和提交)

    我遇到了 JQuery 表单提交问题 并且在任何地方都找不到答案 如果有人能够阐明这一点 我们将不胜感激 问题 我第一次提交表单时 效果很好 但如果我第二次提交相同的表单 它会发送 2 个请求 第三次会发送 3 个请求 依此类推 Scrip