2014-04-01 5 views
2

Загрузить файл нг-изменения не работает, как ожидалось в angularJSAngularJS загрузки файлов не работает, когда мы используем нг-изменения

<input type="file" ng-model="fileUpload" ng-change="setFiles(this) /" 

JS:

$scope.setFiles=function(element){ 
    console.log(element.files); 
} 

Здесь element.files не определен

Но если я изменю ng-change на onchange, он работает.

<input type="file" ng-model="fileUpload" onchange="angular.element(this).scope().setFiles(this)"/> 

JS:

$scope.setFiles=function(element){ 
    console.log(element.files); 
} 

Здесь я получаю объект в element.files.

Почему он работает в onchange не в ng-change?

+0

Прошу прощения. Я пропустил с ответом :) –

ответ

1

Угловой, похоже, не поддерживает привязку для <input type="file"..../>. Кажется, вам нужно создать директиву ... полная информация here. Вы также можете попробовать это использовать library

+0

Создание новой директивы, или если я использую onchange, она работает нормально, но у меня есть вопрос, почему она не работает в ng-change и той же функции, работающей в onchange. – Webfreaks

0
<input type="file" id="file_upload_id_here" style="width:55%" name="file" onchange="angular.element(document.getElementById('file_upload_id_here')).scope().getFileDetailsCandidate(document.getElementById('file_upload_id_here'))" /> 

как выше, несколько раз корень Прицел switchesm он не может вернуть его текущий масштаб, на что эта функция не работает, так что перевести текущий объект документа, как выше

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