【问题标题】:upload jQuery ajax w/ extra data object上传带有额外数据对象的jQuery ajax
【发布时间】:2015-03-13 07:27:14
【问题描述】:

使用答案from here我可以成功上传图片到php。

$(document).ready(function (e) {
$('#imageUploadForm').on('submit',(function(e) {
    e.preventDefault();
    var formData = new FormData(this);

    $.ajax({
        type:'POST',
        url: $(this).attr('action'),
        data:formData, // << i would like to send more object variables
        cache:false,
        contentType: false,
        processData: false,
        success:function(data){
            console.log("success");
            console.log(data);
        },
        error: function(data){
            console.log("error");
            console.log(data);
        }
    });
}));

$("#ImageBrowse").on("change", function() {
    $("#imageUploadForm").submit();
});

});

问题:使用这个,我怎样才能向 php 发送额外的 post 数据对象?
通常我可以发送像var dataObj = {a1:a1,a2:a2} 这样的数据对象,这将替换上面的formData
但是由于formData 占据了data 条目,我似乎无法将更多$_POST 对象附加到PHP。

【问题讨论】:

    标签: php jquery ajax


    【解决方案1】:

    您可以使用append() 将更多数据附加到formData 对象

    $('#imageUploadForm').on('submit',(function(e) {
        e.preventDefault();
        var formData = new FormData(this);
    
        formData.append('key', 'value');
    
        $.ajax({
            ...
        });
    }));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-24
      • 1970-01-01
      • 2018-01-20
      • 1970-01-01
      • 2018-08-22
      相关资源
      最近更新 更多