Javascript - 删除从输入文件中选择的图像[重复]

Posted

技术标签:

【中文标题】Javascript - 删除从输入文件中选择的图像[重复]【英文标题】:Javascript - remove image selected from input file [duplicate] 【发布时间】:2017-04-19 02:01:38 【问题描述】:

我正在使用输入文件图像“预览/删除”功能,但我在删除图像选择功能时发现此错误:

拼接不是函数(…)

点击删除我有这个代码:

HTML:

<input id="pictures" type="file" class="inputfile" name="image[]" multiple required>

JS

$('body').on('click', '.removeImage', function(e)

                e.stopImmediatePropagation();
                // name file removed
                var namefileRemoved = $(this).parent().parent()[0].id;
                // get array images selected
                var elm=$('#pictures')[0].files; 
                // get position element in array and delete it.
                for(var i = 0; i < elm.length; i++) 
                   if(elm[i].name === namefileRemoved) 
                     elm.splice(0, i);
                   
                
                // remove image display html
                $(this).parent().parent().parent().remove();
);

我的var elm=$('#pictures')[0].files; 返回

我试图搜索类似的问题,但我没有找到解决方案!感谢您的帮助!

【问题讨论】:

正如您在日志中看到的那样,对象不是Array 类型,而是FileList 类型,因此拼接不工作。 这是关于从 FileList 中删除文件的答案的链接。 ***.com/questions/3144419/… 【参考方案1】:

尝试切片而不是拼接。我怀疑这就是问题所在。

【讨论】:

以上是关于Javascript - 删除从输入文件中选择的图像[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Chrome 中的文件输入中删除“未选择文件”工具提示?

从多个“输入:文件”中删除 FileList 项

如何将输入/选择值从网站保存到 XML/JSON 文件并使用 JavaScript 自动加载再次填充它们

为啥在 JavaScript 中使用 getRangeAt() 会从选择中删除一些内容?

Javascript - 如何从文件输入控件中提取文件名

javascript 从选择器中删除指定的角色