如何将绑定variables传递给ng-click函数?

我有一个简单的删除button,将接受一个string或数字,但不会接受ng模型variables(不知道这是否是正确的术语)。

<button class="btn btn-danger" ng-click="delete('{{submission.id}}')">delete</button> 

其中生成:

 <button class="btn btn-danger" ng-click="delete('503a9742d6df30dd77000001')">delete</button> 

然而,当我点击时什么也没有发生。 如果我硬编码一个variables,那么它工作得很好。 我假设我只是没有做“angular”的方式,但我不知道这是什么方式:)

这是我的控制器代码:

 $scope.delete = function ( id ) { alert( 'delete ' + id ); } 

你不需要在ng-click使用大括号( {{}} ,试试这个:

 <button class="btn btn-danger" ng-click="delete(submission.id)">delete</button> 

ngClick指令绑定一个expression式 。 它直接执行Angular代码(如ngIfngChange等),而不需要{{ }}

 angular.module('app', []).controller('MyCtrl', function($scope) { $scope.submission = { id: 100 }; $scope.delete = function(id) { alert(id + " deleted!"); } }); 
 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <div ng-app="app" ng-controller="MyCtrl"> <button ng-click="delete(submission.id)">Delete</button> </div>