我有一个 JSP 页面,上面有标准表单。我有两个按钮,按下时每个按钮执行不同的操作,然后提交表单 - 操作 1 和操作 2。
我最初将其设置为一个按钮,因此这一切都是通过以下操作完成的并且工作正常:
$('#form').submit( function() { .... }
但是现在我有两个按钮,我希望它做同样的事情,但是如何找到我按下的按钮。
我可以通过 .click 函数来完成此操作,但我不想破坏现有的 form.submit 功能。
下面是我的代码 - 它不起作用:
$('#form').submit( function() {
// Set the field array variables with data
$('button[name="action1"], [name="action2"]').each(function(index) {
alert('index : ' + index );
alert('value : ' + this.value);
});
$('button[name="action1"]').click(function(e) {
alert('ac1 clicked');
});
$('button[name="action2"]').click(function(e) {
alert('ac2 clicked');
});
我的 html 按钮是:
<button id="submitButton" name="action1" value="action1" type="submit">action 1</button>
<button id="submitButton" name="action2" value="action2" type="submit">action 2</button>
有没有一种方法可以在我的 form.submit 中执行此操作,或者执行 .click,然后提交表单。我对这个问题的解决方案有点迷失?
请帮忙:)
最佳答案
可以读取事件对象的相关目标。
$('#form').on('submit', function(evt) {
if (evt.relatedTarget && $(relEl).is('input[type=submit]')) {
/* related element is a button - do something */
}
evt.preventDefault(); //cancel form submit, as required
});
关于javascript - 使用两个提交按钮提交表单,每个按钮执行不同的操作问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11795126/