Javascript 替换阵列中1个位置上的选择图像

Javascript 替换阵列中1个位置上的选择图像,javascript,base64,filereader,Javascript,Base64,Filereader,我有图像阵列。 我想通过单击将所选图像移动到阵列中的第一位 我犯了一个错误: 未捕获的TypeError:未能对“FileReader”执行“readAsDataURL”:参数1不是“Blob”类型。 我做错了什么?这个问题的解决方案是什么?您提供给readAsDataURL的参数应该是一个文件引用,而不是jquery对象 <input type="file" id="files"> document.getElementById('files').addEventListe

我有图像阵列。

我想通过单击将所选图像移动到阵列中的第一位

我犯了一个错误: 未捕获的TypeError:未能对“FileReader”执行“readAsDataURL”:参数1不是“Blob”类型。
我做错了什么?这个问题的解决方案是什么?

您提供给readAsDataURL的参数应该是一个文件引用,而不是jquery对象

<input type="file" id="files">


document.getElementById('files').addEventListener('change', handleFileSelect, fals)
函数将接收事件作为参数,您可以通过event.currentTarget.files获取文件引用。这是一个数组

另一种方法是从输入元素的files数组获取文件引用


image=$。selectImage[0],它是一个jQuery对象,取自DOM。_file_读取器希望读取的是文件,而不是DOM元素。如果.newProductPic引用的是输入类型=文件,那么您可以使用它来获取文件。@JeremyThille,哦,我是个傻瓜。你能告诉我们如何用另一种方法解决这个问题吗?
<input type="file" id="files">


document.getElementById('files').addEventListener('change', handleFileSelect, fals)