FormData不适用于AJAX

时间:2014-10-10 02:56:36

标签: jquery ajax form-data

我尝试制作此表格" POST"在AJAX但我没有加载用户,当我上服务器没有得到任何东西,任何建议?

这是表格

<form method="POST" action="/ajaxpost">
   <input type="text" name="user"/>
   <input type="submit" value="SEND"/>
</form>



//here trying to do the same form but ajax, I have this button that calls the function "sendAjax ()"

<input type="submit" value="SEND"/>


//The function this does not work. fail data to the server

 function sendAjax(){
         // HTML5 form data object.
        var fd = new FormData();

        fd.append("user", 'JOAN FREDO USERNAME');

        $.ajax({
            url: '/ajaxpost',
            data: fd,
            contentType: 'application/x-www-form-urlencoded',
            processData: false,
            type: 'POST',
            success: function(data){
                alert(data);
            }
        });
    }

2 个答案:

答案 0 :(得分:0)

我认为问题是内容类型,尝试将contentType设置为false,以便jQuery将其设置为

function sendAjax() {
    // HTML5 form data object.
    var fd = new FormData();

    fd.append("user", 'JOAN FREDO USERNAME');
    fd.append("user2", 'asd');

    $.ajax({
        url: '/ajaxpost',
        data: fd,
        processData: false,
        contentType: false,
        type: 'POST',
        success: function (data) {
            alert(data);
        }
    });
}

演示:Fiddle - 您可以看到使用浏览器开发者工具的网络标签发送的数据

答案 1 :(得分:0)

首先在提交按钮中添加 ID 名称

然后,

$('body').on('click','#submit',function(){  

       // var user        = 'JOAN FREDO USERNAME';

        var form_data   =   new FormData();   

        form_data.append("user", 'JOAN FREDO USERNAME');
        //form_data.append('user',user);



        $.ajax({
                url         :   'someURL.php',  //mention valid url
                dataType    :   'text',
                cache       :   false,
                contentType :   false,
                processData :   false,
                data        :   form_data,                
                type        :   'post',
                success     :   function(data){
                             alert(data);                   

            }
        });
});

对我来说很好...... 评论任何问题...