0

我需要使用 angular.js 从视图中调用类型脚本中的函数。我使用的技术是 angular.js typescript 和 ASP.Net MVC3。

这是 UI 中的链接。

<div id="left_aside" ng-controller="MyGivingPortfolioController">
 <div class="charity_portfolio_tile" ng-repeat="Tile in VM.Tiles.TileContainerEntity" >
    <a href="#" ng-click="Delete(Tile.Id)" class="delete_button">delete</a>
 </div>

当我单击此链接时,它不会调用该方法。

 Delete = function (Id:number) {
    alert("Called " + Id.toString());
}

然后我改变了这个功能,如下所示。

Delete(charityID: number) {
    var id = charityID;
    alert(id.toString());
}

虽然我更改了代码,但它没有用。其实我不知道这是什么原因。

class MyController implements IMyController {


Tiles: TileContainerEntities;

constructor($scope, $http: ng.IHttpService) {
    $scope.VM = this;
    $http.get("/API/PrivateAPI/Test/1").success((responce) =>{this.BusinessReponseList = responce;  });
}



Delete = function (Id:number) {
    alert("Called " + Id);
}

//Delete(charityID: number) {
//    var id = charityID;
//    alert(id.toString());
//}

}

有谁知道该怎么做?

4

1 回答 1

6

修改href的ng-click为ng-click="VM.Delete(Tile.Id)"

IE:

<div class="charity_portfolio_tile" ng-repeat="Tile in VM.Tiles.TileContainerEntity" >
      <a href="#" ng-click="VM.Delete(Tile.Id)" class="delete_button">delete</a>
</div>

只是与答案没有直接关系的有用信息:注意范围继承:http: //youtu.be/WdtVn_8K17E?t= 5m34s。一个 ng-repeat 创建一个新的范围 :)

于 2013-07-25T11:08:58.387 回答