您好,我是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;
};
答案 0 :(得分:1)
我不确定使用 angular.element 调用 file_changed()方法的意图是什么。这不是angular 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;
}
});