3

现在我有点进退两难,因为我无法编辑onSubmit我的表单,所以我必须动态设置它。我的问题是,我不知道如何在不覆盖已经存在的值的情况下执行此操作onSubmit
例如,假设我有以下代码:

<form name="bob" onSubmit="something-i-cannot-change">

</form> 

我将如何设置另一个功能onSubmit与已经存在的另一个功能一起发生?我查了一下,没有运气......谢谢,我真的很感激任何帮助!

注意:如果此问题与任何内容重复,请告诉我!

4

3 回答 3

5
document.getElementById("<element-id>").setAttribute("onSubmit", "<action>");
于 2015-08-08T05:11:40.103 回答
4
document.querySelector('[name="bob"]')
        .addEventListener('submit',
                          functionThatDoesSomethingAfter);

请注意,表单必须已经在 DOM 中,所以将代码放在 body 标记的末尾。

https://developer.mozilla.org/en-US/docs/Web/API/document.querySelector

https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.addEventListener

于 2013-06-15T21:34:03.770 回答
1

保存对现有 onSubmit 函数的引用,然后创建一个新的 onSubmit 函数来执行您想要的操作,然后调用原始函数。

// jQuery syntax for DOM work
var originalSubmit = $('#bob').onSubmit
$('#bob').onSubmit = function() { do stuff here then call original };
于 2013-06-15T21:38:08.487 回答