当我的代码示例中的 ng-repeat 区域执行时,ng-click 操作不起作用。虽然如果移到 ng-repeat 之外它会起作用。不知道如何解决或导致这种情况发生的原因,
我的 HTML
<table class="table table-bordered table-hover" id="my-vehicles-table" ng-controller="VehicleController">
<tbody>
<tr ng-repeat="car in cars">
<td><a href="{% ng car.get_absolute_url %}">{% ng car._get_model_display.make_display %} {% ng car._get_model_display.model_display %} {% ng car._get_model_display.trim_display %}</a></td>
<td>{% ng car.created_since %}</td>
<td>{% ng car.view_count %}</td>
<td>
<a href="#" ng-click="delete($event, {% ng car.id %})" class="btn btn-danger btn-mini delete-btn">{% trans 'Delete' %}</a>
<a href="#" ng-model="edit" class="btn btn-primary btn-mini edit-btn">{% trans 'Edit' %}</a>
</td>
</tr>
</tbody>
</table>
其中 {% ng xxx %} 将输出 {{ xx }} 这是它的 django 模板标签。内容正常呈现,即使在删除的锚内,我也可以看到 delete($event, num) 因此它正确填充了值。
但是当我单击删除锚点时,它不会从我的以下控制器调用函数删除
'use strict';
function VehicleController($scope, car) {
car.query(
// params
{created_by: '1'},
// success
function(data) {
$scope.cars = data.objects;
},
// error
function(data) {
}
);
var init = function() {
};
$scope.delete = function($event) {
console.log('dude');
// car.delete({id: id});
}
// initialize values
init();
}