使用链接而不是按钮上传文件,但收到$ _FILES数组为空

时间:2018-06-25 19:41:24

标签: ajax file upload

在我的上传文件中,我继续收到其余的表单数据 但是$ _FILES数组为空。你们能帮我为什么吗 我正在发送隐藏的输入数据,但没有文件数据?

我有这个链接

<li><a href='#'  id='upload_linko' onClick='imgUpload(1)'><i class='icon-image2'></i> Update cover photo</a></li>

这是表格

<form id='upform' method='post'  enctype='multipart/form-data'>
    <input type='file' id='upload1' name='upload1' style='visiblity: hidden ; width: 1px; height: 1px'  />
    <input type='hidden' id='profid' name='profid' value='xyz'> 
    <input type='hidden' id='query_type' name='query_type' value='cover'> 
 </form> 

我的脚本是这样的

 $(document).on('change','#upload1' , function(){       

        var fd = new FormData($("#upform")); 
        var file_data = $('input[type="file"]')[0].files;  
         $.each(file_data, function(key, value)
            {
            fd.append('file', value);
            }); 
        var other_data = $('#upform').serializeArray();
            $.each(other_data,function(key,input){
            fd.append(input.name,input.value);
        }); 

        $.ajax({
            url: 'xxxxxxxx.php',  
            type: 'POST',
            data: fd,
            success:function(data){
               // $('#output').html(data);
            },
            cache: false,
            contentType: false,
            processData: false
        });
     });    

function imgUpload(optype)
    {
    document.getElementById('upload1').click(); 
    }   

0 个答案:

没有答案