Angular2输入文件onChange在Firefox中不起作用的事件

问题描述:

在Chrome和Internet Explorer中,我的输入文件上传工作正常,但在Firefox中使用时出现错误。Angular2输入文件onChange在Firefox中不起作用的事件

从HTML模板

<input multiple style="display: none" type="file" (change)="onChange($event)" accept="image/*"/> 

提取摘自组件类

onChange(event: any) { 

    let files = event.srcElement.files; 
    .... 
    } 

错误信息只是: 类型错误:event.srcElement未定义

这是一个错误Firefox的?美元符号的含义是什么?

您应该使用event.target(正在被其他浏览器使用),因为srcElement仅被IE使用。此后,您可以将event.srcElement作为后备(针对Internet Explorer的情况)

var target = event.target || event.srcElement; //if target isn't there then take srcElement 
let files = target.files; 
+0

和Chrome。非常感谢你。那很快。 – Johannes

+0

@ user59442其他浏览器确实有'event.target' –