使用codeigniter将formData与ajax中的另一个数据一起传递

时间:2015-12-12 04:00:17

标签: jquery ajax codeigniter

我在coodeigniter中开发了带上传库的ajax上传。

这是我用jquery抓取的数据:

        var inputFile = $('input#file');
        var filesToUpload = inputFile[0].files;
        // make sure there is file(s) to upload
        if (filesToUpload.length > 0) {
            // provide the form data that would be sent to sever through ajax
            var formData = new FormData();

            for (var i = 0; i < filesToUpload.length; i++) {
                var file = filesToUpload[i];
                formData.append("file[]", file, file.name);
            }

这是我的ajax:

$.ajax({
   url: "<?php echo base_url('surveyor/c_surveyor/add_file_image'); ?>",
   type: 'post',
   data: formData,
   processData: false,
   contentType: false,
   success: function () {
         $(":file").val('');
         $(":text").val('');
         $("#tableClean").find("tr:gt(0)").remove();
         $("#tableReport").find("tr:gt(0)").remove();
         $("#addRow").attr("disabled", false);
         $("#addClean").attr("disabled", false);

         $('#pilih_isotank').after('<div class="callout callout-success lead" id="div_error"><p id="pesan_error">Semua Data Berhasil Terupload</p></div>');
         $('#div_error').fadeIn("fast");
         $('#pesan_error').html(obj.Message);
         $('#div_error').fadeOut(7000);
         myArrays = [];
        }
});

我有一个问题,如何在$ ajax ilike中传递另一个数据:

data: formData, EIR_REF : $('#no_eir').val();

我尝试在此网址上访问此EIR_REF

public function add_file_image(){
   echo $this->input->post('EIR_REF');
}

它什么都没给我。我怎样才能成真呢?

2 个答案:

答案 0 :(得分:1)

formData.append也可以。 只需在循环外添加下面的代码,然后发布到服务器。

System.exit

答案 1 :(得分:0)

您可以在单独的字段中传递formdata,并且可以添加额外字段,如下所示。在serever方面,您可以相应地访问。试试这个:

data: {formData:formData, EIR_REF : $('#no_eir').val()};