Передайте Angularjs $ index в onchange с помощью ng repeat и введите тип файла - PullRequest
0 голосов
/ 13 октября 2018

Привет, я новичок в Angularjs. Я создаю строку таблицы, используя ng repeat, строка содержит файл с типом ввода, поэтому я хочу загрузить другой файл из другой строки.Я хочу передать индекс для каждой строки с помощью метода onchange. Но индекс всегда возвращает ноль.Фрагмент кода

input type="file" onchange="angular.element(this).scope().file_changed(this)" 

scope.file_changed = function (element) { 
var index = angular.element(element).scope().$index;
var files = element.files;

};

1 Ответ

0 голосов
/ 13 октября 2018

Я не уверен, какова причина вызова метода file_changed () с использованием angular.element .Это не правильный подход в угловых JS.Если этот метод уже находится в области действия вашего контроллера, вы можете получить прямой доступ из html, как показано ниже, и вы можете передать $ index в качестве параметра в метод.

 <div ng-repeat="row in rows track by $index">
    <input type="file" onchange="file_changed(this,$index)" 
  </div>

Я предполагаю, что вашему контроллеру понравится это

  app.controller('YourController', function($scope) {
       $scope.file_changed=function(element,index){ 
            var files = element.files;
       }  
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...