You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

jQuery 3.3版本中.submit()已弃用,求替代方案(官方博客未提及)

jQuery 3.3中.submit()弃用的替代方案

嘿,这个问题我之前刚好研究过,给你理清楚!

首先明确:jQuery 3.3里被标记为弃用的是不带参数调用.submit()触发表单提交的用法,而用来绑定提交事件的.submit(handler)其实并未被弃用——不过官方更推荐统一用标准事件绑定写法,下面分两种场景说明替代方案:

1. 触发表单提交的替代写法

如果你之前是这么触发表单提交的:

$('form#my-form').submit();

现在请替换成:

$('form#my-form').trigger('submit');

jQuery弃用这类快捷触发方法的原因是为了让API更统一,所有事件触发都通过.trigger()方法实现,减少不同快捷方法带来的认知混淆。

2. 绑定提交事件的推荐写法

虽然绑定事件的.submit(handler)没有被弃用,但官方一直推荐用.on()方法来绑定所有事件,写法更统一,扩展性也更强。比如原来的代码:

$('form#my-form').submit(function(e) {
  e.preventDefault();
  // 自定义提交逻辑
});

可以改成:

$('form#my-form').on('submit', function(e) {
  e.preventDefault();
  // 自定义提交逻辑
});

这种写法和click、change等其他事件的绑定方式保持一致,团队协作时更易理解和维护。

你提到官方博客没提及这个弃用确实有点遗憾,但查看jQuery源码能清晰看到触发分支里的deprecate标记,所以还是建议尽快替换成标准写法,避免后续版本可能的移除。

内容的提问来源于stack exchange,提问作者Renari

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:37:54