输入名称提交不提交表单


Input name submit not submit the form

如果我命名按钮"提交",则表单未提交。但是,如果我更改了名称,则表单正在提交其他名称。

网页代码:

<form name="my_form" action="/search" method="get" id="my_form">
/** code **/
<button name="submit" type="submit"><i class="fa fa-angle-right"></i></button>
</form>

在这里,如果我更改button名称,那么它将起作用并提交表格。

JQUERY代码

$( document ).ready(function() {
    $('.attr_list').on('ifChanged', function(event){
        alert("message will display"); // here alert will come but form is not submitting
        $("#my_form").submit();
    });
});

如果我将按钮命名为"提交",为什么它不提交?

我认为您应该将按钮名称从"提交"更改为其他任何名称。

原因:

表单元素具有一个名为 submit 的属性,您可以调用该属性来提交它们。(当你在jQuery实例上调用submit时,jQuery会在幕后使用它。但是 Form 元素还使用该字段的名称接收表单中每个字段的属性,因此,如果您有一个名为"submit"的字段,它将覆盖 submit 函数,这意味着您无法以编程方式提交表单。

您的代码应该是:

<form name="my_form" action="/search" method="get" id="my_form">
/** code **/
<button name="othername" type="submit"><i class="fa fa-angle-right"></i></button>
</form>

它会起作用....

您也可以尝试:

$("form").submit(function(){
     alert("Submitted");
});

而不是$("#my_form").submit();如果它正在产生问题

您的文件中是否有可用的 ob_start()。请将其删除并尝试一次。