Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在formdata上追加多个输入文件_Javascript_Php_Jquery_Html - Fatal编程技术网

Javascript 如何在formdata上追加多个输入文件

Javascript 如何在formdata上追加多个输入文件,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我必须使用表单数据发送多个文件,但我的代码不起作用。有人能告诉我哪里出错了吗 $('#fileupload')。在('change',function()上{ var to_user_id=$(this.data('tuserid'); var chat_id=$(this).data('chat_id'); var formData=new formData(); $.each($('input[type=file]')[0]。文件,函数(i,值){ append('file['+i+']'

我必须使用表单数据发送多个文件,但我的代码不起作用。有人能告诉我哪里出错了吗

$('#fileupload')。在('change',function()上{
var to_user_id=$(this.data('tuserid');
var chat_id=$(this).data('chat_id');
var formData=new formData();
$.each($('input[type=file]')[0]。文件,函数(i,值){
append('file['+i+']',value.files[0]);
});
//console.log(formData);
formData.append('to_user_id',to_user_id');
formData.append('chat\u id',chat\u id');
$.ajax({
url:'upload.php',
键入:“POST”,
数据:formData,
数据类型:“json”,
processData:false,
contentType:false,
cache:false,
成功:功能(数据){
//控制台日志(数据);
}
})
});

您必须在表单数据中传递值

$.each($('input[type=file]')[0].files, function(i, value){
    formData.append('file['+i+']', value); // change this to value
});
我使用的示例代码

$.each($('#upload_screenshot')[0].files,function(key,input){
formData.append('upload_screenshot[]', input);
});

请实现下面的脚本代码

$('#fileupload').on('change', function(){
    var to_user_id = $(this).data('touserid');
    var chat_id = $(this).data('chat_id');
    var form_data = new FormData();
    var ins = document.getElementById('fileupload').files.length;
    for (var x = 0; x < ins; x++) {
        form_data.append("documentfiles[]", document.getElementById('fileupload').files[x]);
    }
    if(ins > 0)
    {
        formData.append('to_user_id', to_user_id);
        formData.append('chat_id', chat_id); 
        $.ajax({
            url: 'upload.php',, 
            dataType: 'text', 
            cache: false,
            contentType: false,
            processData: false,
            data: form_data,
            type: 'post',
            success: function (response) {

            },
        });
    }
    else
    {
        alert("Please choose the file");
    } 
});
$('#fileupload')。在('change',function()上{
var to_user_id=$(this.data('tuserid');
var chat_id=$(this).data('chat_id');
var form_data=new FormData();
var ins=document.getElementById('fileupload').files.length;
对于(var x=0;x0)
{
formData.append('to_user_id',to_user_id');
formData.append('chat\u id',chat\u id');
$.ajax({
url:“upload.php”,,
数据类型:“文本”,
cache:false,
contentType:false,
processData:false,
数据:表格数据,
键入:“post”,
成功:功能(响应){
},
});
}
其他的
{
警告(“请选择文件”);
} 
});

我希望你的问题会得到解决

请去读。“不工作”并不是一个正确的问题描述。另外,请向我们展示此代码所操作的表单-formData.append有第三个文件名参数。同时提供文件名。