Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.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 如何在多个变量中存储多个编码值_Javascript_Html - Fatal编程技术网

Javascript 如何在多个变量中存储多个编码值

Javascript 如何在多个变量中存储多个编码值,javascript,html,Javascript,Html,我已经给了多个上传文件选项,但它是存储在一个变量的一切,但我不知道如何存储在一个单独的变量单独的文件编码值。它应该根据文件上传创建变量并存储编码值 <html> <body> <input id="inputFileToLoad" type="file" onchange="encodeImageFileAsURL();" multiple /> <div id="imgTest"></div> <script type='te

我已经给了多个上传文件选项,但它是存储在一个变量的一切,但我不知道如何存储在一个单独的变量单独的文件编码值。它应该根据文件上传创建变量并存储编码值

<html>
<body>

<input id="inputFileToLoad" type="file" onchange="encodeImageFileAsURL();" multiple />
<div id="imgTest"></div>
<script type='text/javascript'>

    function encodeImageFileAsURL(index) {
        var filesSelected = document.getElementById("inputFileToLoad").files;
        index = index || 0;
        if (filesSelected.length > 0 && index < filesSelected.length) {
            var fileToLoad = filesSelected[index];

            var fileReader = new FileReader();

            fileReader.onloadend = function(fileLoadedEvent) {
                var srcData = fileLoadedEvent.target.result; // <--- data: base64

                var newImage = document.createElement('img');
                newImage.src = srcData;

                document.getElementById("imgTest").appendChild(newImage);
                if (index < filesSelected.length) {
                    encodeImageFileAsURL(index + 1)
                }
                console.log(srcData);    
            }
            fileReader.readAsDataURL(fileToLoad);
        }
    }
</script>
</body>
</html>

函数encodeImageFileAsURL(索引){
var fileselected=document.getElementById(“inputFileToLoad”).files;
指数=指数| | 0;
如果(fileselected.length>0&&indexvar srcData=fileloadevent.target.result;//您可以将变量保存到数组中,然后随时访问它

    var sourceArray = new Array(); // put this before the function delaction 


                fileReader.onloadend = function (fileLoadedEvent) {
                    var srcData = fileLoadedEvent.target.result; // <--- data: base64

                    sourceArray.push(srcData);

                    var newImage = document.createElement('img');
                    newImage.src = srcData;

                    document.getElementById("imgTest").appendChild(newImage);
                    if (index < filesSelected.length) {
                        encodeImageFileAsURL(index + 1)
                    }}

                    console.log(sourceArray);
var sourceArray=new Array();//将其置于函数delaction之前
fileReader.onloadend=函数(fileLoadedEvent){

var srcData=fileloadevent.target.result;//缺少一个}括号,还要在函数外部添加数组声明,我试过了,效果很好@user5397448@user5397448因此,您没有将srcData推送到array.sourceArray.push(srcData)中;它是如此直接和简单。简单的方法很好