gpt4 book ai didi

javascript - 当回调触发手动表单提交时,不会调用 jQuery 表单提交处理程序

转载 作者:行者123 更新时间:2023-12-01 05:21:14 25 4
gpt4 key购买 nike

我遇到一个问题,当我使用普通 JavaScript 手动触发类“reCaptchaForm”的表单提交时,不会调用表单的提交处理程序,如下面的代码片段所示。

我有onReCaptchaSuccess回调将手动提交表单,但是当我这样做时,提交处理程序不会被调用 - 当我使用 <button> 在浏览器中本地提交表单时,它会起作用。类型为“提交”。

在我的表单所在的模板中:

<script type="text/javascript">
require(['crmpicco/coursedetails'], function(details) {
details.init();
});
function onReCaptchaSuccess(token) {
document.getElementsByClassName("reCaptchaForm")[0].submit();
}
</script>

我的 RequireJS 模块 coursedetails.js :

define('crmpicco/coursedetails', [
'jquery',
'intl-tel-input',
'jstz'
], function($) {
var CourseDetails = {
init: function() {
this.initPhoneNumber();
},

initPhoneNumber: function() {

// ...some field cloning in here...

originField.closest('form').submit(function() {
// this form submit handler is never envoked!
});
},
};

return CourseDetails;
});

我猜我在这里遗漏了一些明显的东西,但我不明白为什么这里没有调用提交处理程序,因为我的理解是这应该冒泡。

编辑:好的,我现在已经读过这篇文章了。 https://stackoverflow.com/a/645556/691505 - 但是它并没有解决我如何捕获编程提交的问题。

最佳答案

我想我在 edit 中回答了我自己的问题如上所述。

本质上 - 该事件仅在由用户激活时才会触发 - 在由代码激活时不会触发

关于javascript - 当回调触发手动表单提交时,不会调用 jQuery 表单提交处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43485887/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com