简体   繁体   English

为什么jquery ajax表单提交返回错误?

[英]Why jquery ajax form submit return error?

Hi I am new to ajax and jquery and I need to submit a form with ajax when a button "mainbutton" is clicked. 嗨,我是ajax和jquery的新手,单击按钮“ mainbutton”时,我需要使用ajax提交表单。 Here is my code 这是我的代码

$(document).ready(function(){
            $("#mainbutton").click(function(){
                $("#ajaxform").submit(function(e)
                {
                    var postData = $(this).serializeArray();
                    var formURL = $(this).attr("action");
                    $.ajax(
                    {
                        url : formURL,
                        type: "POST",
                        data : postData,
                        success:function(data, textStatus, jqXHR) 
                        {
                            alert("success");
                        },
                        error: function(jqXHR, textStatus, errorThrown) 
                        {
                            alert("error");      
                        }
                    });
                    e.preventDefault(); //STOP default action
                });
                $("#ajaxform").submit(); //Submit the form
            });
        });

when I try that I get Error and my form is not submitted and my servlet doPost() is not called. 当我尝试得到Error并且我的表单未提交并且未调用servlet doPost()时。 Where is my mistake ? 我的错误在哪里?

Looks like it's working to me. 看起来对我有用。 See Fiddle. 参见小提琴。

https://jsfiddle.net/louisnovick/qyLmvjax/ https://jsfiddle.net/louisnovick/qyLmvjax/

JS JS

$(document).ready(function(){
        $("#mainbutton").click(function(){
            $("#ajaxform").submit(function(e)
            {
                var postData = $(this).serializeArray();
                var formURL = $(this).attr("action");
                $.ajax(
                {
                    url : '/echo/html/',
                    type: "POST",
                    data : postData,
                    success:function(data, textStatus, jqXHR) 
                    {
                        alert("success");
                    },
                    error: function(jqXHR, textStatus, errorThrown) 
                    {
                        alert("error");      
                    }
                });
                e.preventDefault(); //STOP default action
            });
            $("#ajaxform").submit(); //Submit the form
        });
    });

HTML 的HTML

<form method="POST" id="ajaxform">
    <label for="test">Test Input</label>
    <input type='text' name="test">
        <button type="submit" id="mainbutton">Submit</button>
   </form>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM