我有一个页面,使用jQuery和parsley插件进行表单验证和提交。以下是表单的事件处理程序:
$('#formid').parsley().on('form:submit', function(event) {
//handle form submit
});
我有另一个纯JavaScript监听器函数需要在表单提交时执行。以下是代码片段:
document.getElementById("formid").addEventListener("submit",function(e){
//Some code to be executed after form submit
});
我有一个要求,不使用jQuery来完成上述功能。
现在的问题是,parsley通过使用event.stopImmediatePropagation();
阻止了事件沿着线路流动。
因此,第二个事件处理程序没有被执行。有没有办法让我的纯JavaScript处理程序先执行?我找到了这个jQuery解决方案来绑定一个事件处理程序,但我需要纯JavaScript解决方案。非常感谢您的帮助。
更新: 这里是我问题的JSFiddle。
<>
工具栏按钮)代替 jsFiddle,在可运行的演示中放置展示问题所需的全部代码。 - T.J. Crowderwindow.onload = function() { /*your code here*/};
的包装器中。如果你使用选项关闭这个包装器(这是一个非常愚蠢的默认设置),那么你在我的答案中遇到的问题就会消失。 - T.J. Crowderscript
标签放在head
中通常不是一个好主意(除非您使用async
或defer
),您不能移动它吗? - T.J. Crowder