[英]How to pass an angular object value from HTML to AngularJS controller as parameter
我有一個清單如下
$scope.fileUploadTypesList ={'abc','def'}
我宣布以下清單
<div class="row" ng-repeat="list in fileUploadTypesList track by $index">
<div class="col-sm-12 col-xs-12" id="{{list}}Upload">
<div class="col-xs-12 imgHolder">
<h5 class="text-muted"
style="position:absolute;top:30%;left:20%;right:20%;text-align: center;">
<i class="fa fa-upload fa-2x"></i><br /> Attach {{list}}
</h5>
<img class="center fileUploadImage" />
<input name="{{list}}Upload" type="file"
class="fileUpload" accept="image/*"
onchange="angular.element(this).scope().selectFileforUpload(this.files,{{list}})">
</div>
</div>
</div>
我的控制器功能如下
$scope.selectFileforUpload = function (file, fname) {
console.log("File Select event:"+ fname);
$scope.SelectedFileForUpload = file[0];
$scope.SaveFile(fname);
};
現在, fname
無法從{{list}}
接收值,這給了我以下控制台錯誤Uncaught SyntaxError: Unexpected token {
我如何將{{list}}
值發送到參數
使用onchange="angular.element(this).scope().selectFileforUpload(this.files,{{list}})"
我正在嘗試發送{{list}}
值
fname
是應該接收{{list}}
值的變量
為了獲得項目值,您將需要使用以下方法訪問元素的范圍
<input type="file" accept="image/*" name="{{list}}Upload"
onchange="angular.element(this).scope().selectFileforUpload(this.files,
angular.element(this).scope().item)">
$scope.selectFileforUpload = function(files, list) {
console.log(list);
console.log(files[0].name);
console.log(files[0]);
};
這是一個有效的例子。 http://codepen.io/mkl/pen/QEpLRa
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.