2016-08-23 2 views
3

В 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; 
    .... 
    } 

Сообщение об ошибке просто: TypeError: event.srcElement неопределен

Является ли это ошибка Firefox? В чем смысл знака доллара?

ответ

5

Вы должны использовать 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

@ пользователь59442 др. Браузер есть 'event.target' –

Смежные вопросы