gpt4 book ai didi

javascript - jQuery on ('submit' )无法使用通过 document.createElement 创建的表单

转载 作者:行者123 更新时间:2023-12-02 15:50:48 26 4
gpt4 key购买 nike

有人可以解释为什么 $('body').on('submit') 不适用于动态创建的表单吗?该事件在表单创建并附加到 body 后绑定(bind),因此我期望 form_handler 应该启动,但它没有。

form_handler = function(){
alert('ok');
}

function create_form(){
var f = document.createElement('form');
f.method = 'POST';
f.action = '/echo/html/';
f.className = 'test_form';
document.body.appendChild(f);
return f;
}

$(document).ready(function(){
var form = create_form();
$('body').on('submit', 'form.test_form', form_handler);
form.submit();
});

这是 jsfiddle link 。如果我犯了一个明显的错误,请原谅我。

更新

我无法按照@Vohuman的建议使用jQuery Submit方法。问题是第三方库正在创建动态表单并提交它。我正在使用 jQuery 来捕捉这一点。

最佳答案

HTMLFormElement.submit 方法绕过 jQuery submit 监听器。您可以使用 jQuery 包装该元素并使用 jQuery submit 方法。

$(form).submit();

关于javascript - jQuery on ('submit' )无法使用通过 document.createElement 创建的表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31866462/

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