Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么不是';t使用jquery提交表单时,文章中包含的提交按钮_Javascript_Jquery_Forms - Fatal编程技术网

Javascript 为什么不是';t使用jquery提交表单时,文章中包含的提交按钮

Javascript 为什么不是';t使用jquery提交表单时,文章中包含的提交按钮,javascript,jquery,forms,Javascript,Jquery,Forms,单击按钮或按enter键提交表单时,提交按钮将包含在已发布的字段中。但是,如果表单是使用jquery($(“#某些表单”).submit();)提交的,则不包括提交按钮。如果按钮上触发了单击事件,则该事件将包含在已发布的字段中。 这种行为正常吗?是否有办法使用submit方法将按钮包含在Submited字段中 **编辑:**如@Pointy在评论中所述: 输入字段中的“输入”可导致提交;这方面的规则有些复杂。通常它与有多少输入字段有关(比如,只有一个或多个) 显然,不是每次按下enter键时都会

单击按钮或按enter键提交表单时,提交按钮将包含在已发布的字段中。但是,如果表单是使用jquery(
$(“#某些表单”).submit();
)提交的,则不包括提交按钮。如果按钮上触发了单击事件,则该事件将包含在已发布的字段中。
这种行为正常吗?是否有办法使用submit方法将按钮包含在Submited字段中

**编辑:**如@Pointy在评论中所述:

输入字段中的“输入”可导致提交;这方面的规则有些复杂。通常它与有多少输入字段有关(比如,只有一个或多个)


显然,不是每次按下enter键时都会提交表单,但我找不到任何相关信息。是否有人可以发布一个链接,或解释这些规则,说明是什么触发表单提交以及包含哪些表单字段?

您可以这样做:

Javascript

$('form').on('submit', function(e) {
    e.preventDefault();

    var data = [];
    $(this).find(':input').each(function () {
        if (this.name) {
            data.push({ name: this.name, value: this.value });
        }
    });

    $('div').html($.param(data));
});

这是预期的行为。只有当与提交按钮的交互导致表单被提交时,提交按钮才会包含在POST(或GET)中。
是否有办法将该按钮包含在提交字段中?
正如您所说,您可以触发单击。右键,触发“单击”,或者只添加参数名称和值。@Pointy"... 如果与该按钮的交互是导致表单提交的原因”-按enter键算是与该按钮的交互吗?@未定义如果该按钮有焦点且按了“enter”,则会导致“单击”该按钮。按“enter”键“从输入字段可以导致提交;这方面的规则有些复杂。通常它与输入字段的数量有关(比如,只有一个或多个)。您没有定义
name
变量,但它显示为“result”:)啊,您是对的。小错误!我已经更新了我的答案。这对您有用吗?虽然这显示了一种生成包含submit按钮的查询字符串的方法,但它没有回答为什么在使用javascript提交表单时不包含该按钮。