javascript - 使用两个提交按钮提交表单,每个按钮执行不同的操作问题

标签 javascript jquery ajax forms

我有一个 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/

相关文章:

javascript - 使用 JQuery 向 REST API 提交 From 不起作用

javascript - onpaste 事件替换文本框中的文本

javascript - 使用 tel : doesnt work 防止 anchor 标记上的默认值

javascript - 在一定的延迟后一个一个地加载不同的网址

javascript - JS DateTimePicker onChange 事件不工作

php - 将输入分配给 div?

javascript包含方法输出不正确的结果

javascript - jQuery window.location.hash 问题

javascript - 日期 ('2015-1-1' ) 输出不同于日期 (2015-01-01)

javascript - 为什么我不能执行 .ajax ( return data; )? jQuery