使用ajax发送文件(JQUERY)

时间:2018-05-07 16:06:24

标签: javascript jquery html forms

我正在尝试使用AJAX发送图像。尽管我继续发生此错误。

  

TypeError:在未实现接口FormData的对象上调用'append'。

enter image description here

这是我的代码:

$(document).ready(function(){

$('#post').on('submit', function(e){
    e.preventDefault();
    var data = new FormData(this);
    $.ajax(
        {
            url: 'post_ajax/savePost',
            type: 'POST',
            dataType: false,
            contentType: false,
            pocessData: false,
            data: data,
            success: function (resultado) {
               console.log(resultado)
            }
        }
    ).done(
        function(json){
            if(json.data){
                console.log('Ajax correcto');
            }else{
                console.log('No se ha podido guardar el post');
            }
        }
    ).fail(
        function(){
            console.log('fallo en ajax');    
        }    
    );
});

});

这是我的html表单:

<form id="post" enctype='multipart/form-data'>
     <textarea id="texto" rows="4" cols="50" placeholder="¿Que esta pasando?"></textarea> 
     <input type="file" id="media"/>
     <input type="submit" value="Submit"/>
</form>

谢谢!!

1 个答案:

答案 0 :(得分:-1)

我找到了这个答案here

var formData = new FormData(form[0]);
    formData.append('texto', texto);
    formData.append('media', archivo);

     $.ajax({
        url: 'post_ajax/savePost',
        data: formData,
        cache: false,
        contentType: false,
        processData: false,
        type: 'POST',
          success: function(data){
             console.log(data);
          }
     });

感谢所有人