Angular:ng-click,参数不起作用

时间:2013-02-25 12:57:32

标签: angularjs

我有以下HTML:

<i style="cursor:pointer" ng-click="addName()" class="icon-plus"></i>
<i style="cursor:pointer" ng-click="delName({{$index}})" class="icon-remove"></i>

我控制器$scope中的以下功能:

$scope.addName = function() {
    $scope.names.push($scope.newName);
    $scope.newName = '';
};
$scope.delName = function(i) {
    $scope.names.splice(i, 1);
};

addName()工作正常,但永远不会调用delName()。是否无法将ng-clik绑定到带有参数的函数?

3 个答案:

答案 0 :(得分:14)

错误发生在html中,不应事先评估ng-repeat $ index:

这是有效的HTML:

<i style="cursor:pointer" ng-click="delName($index)" class="icon-remove"></i>

答案 1 :(得分:0)

代码对我来说似乎很好,你能在jsFiddle中找出你的问题吗?

编辑: 删除了关于拼接不能修改为数组的错误答案。

答案 2 :(得分:0)

您可以执行以下操作

<i ng-click="delName($index)" class="icon-remove"></i>

在css中

[ng-click],
[data-ng-click],
[x-ng-click] {
    cursor: pointer;
}