Ale*_*kov 5 angularjs angularjs-ng-repeat
使用此代码:
<!doctype html>
<html lang="en" ng-app="app">
<head>
<meta charset="UTF-8">
<title>ngTest</title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0-rc.3/angular.js"></script>
<script>
angular
.module('app', [])
.controller('Main', ['$scope', function($s) {
$s.data = {
level1: {
level2: {
elements: [{
name: 'item1'
},{
name: 'item2'
},{
name: 'item3'
},{
name: 'item4'
}]
}
}
};
}]);
</script>
</head>
<body ng-controller="Main">
<div ng-repeat="item in data.level1.level2.elements">
<input type="file" ng-model="item.name">
</div>
<pre>{{data}}</pre>
</body>
Run Code Online (Sandbox Code Playgroud)
会引发这个错误:
Error: An attempt was made to use an object that is not, or is no longer, usable.
Run Code Online (Sandbox Code Playgroud)
更改后type="file",错误会消失type="text".知道怎么解决这个问题吗?我将编写一个指令,它将change在输入上监听偶数,上传给定文件并将其值分配给绑定模型.但我这个错误阻止了我这样做.最近几天花了我很多头发.对此事的任何意见都将不胜感激.
对于单个输入,我只需使用
<input ng-model="file" onchange="angular.element(this).scope().upload(this)" type="file">
Run Code Online (Sandbox Code Playgroud)
然后我可以访问控制器函数中的 fileList 并将其发送到 fileReader 例如
$scope.upload = function(el) {
console.log(el.files);
};
Run Code Online (Sandbox Code Playgroud)
我针对 ng-repeat 的情况扩展了它,所以你可以检查这个plunker
| 归档时间: |
|
| 查看次数: |
2850 次 |
| 最近记录: |