jquery检测哪个按钮提交了表单

标签 jquery submit detect

我有一个包含以下内容的表单:

<form id="my-form" ...>
    ...
    <button type="submit" name="bttnsubmit" value="1">The first button</button>
    <button type="submit" name="bttnsubmit" value="2">The last button</button>
</form>

我想检测哪个触发了表单提交事件,只需使用:

$('#my-form').submit(function(){
    //psuedo code
    if($('[name=bttnsubmit]').val() == 1) {
        ....
    }
});

显然,选择器将始终返回它遇到的第一个 bttnsubmit 元素的值,因此我需要一些其他魔术选择器或过滤器或其他东西。

我见过 $('[name=bttnsubmit][clicked=true]') 吹捧,但在我的尝试中尚未奏效...

我当然可以求助于 $('[name=bttnsubmit]').click() 但更希望能够在表单提交事件中实现我的目标。

非常感谢任何帮助/提示。

最佳答案

我不知道是否有任何内置事件数据(也许有),但想到的一个想法是处理按钮的单击事件并存储该值的全局引用。像这样的事情:

var ButtonValue;

$('button[type="submit"]').click(function(e){
   ButtonValue = $(this).val();
});

$('#my-form').submit(function(){
    //psuedo code
    if(ButtonValue == 1)
    {
        ....
    }
});

关于jquery检测哪个按钮提交了表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14628750/

相关文章:

javascript - 将 jQuery 事件从单击更改为加载

html - 如何在没有javascript的情况下通过提交输入传递参数?

jquery - 如何使用 jQuery 或其他一些简单的方式检测移动浏览器..?

jquery - 使用 jQuery 动态更改提交时的表单 GET 目标

php - Ajax /PHP : Returning values

jQuery Submit() 在 FF/Chrome 中有效(如预期),但在 IE/Opera 中无效,有什么想法吗?

javascript - 如何在 If 内的 php 中提交

linux - 如何在 Linux 上终止程序之前检测重启

Java检测图像中的旋转

jquery - 从 jquery easyui 组合框中删除数据