javascript - 请解释 AngularJs 调试中的 ng-click 行为

标签 javascript angularjs

在分页指令中我有:

<tr dir-paginate="item in NumDen | itemsPerPage: 10">
 <td><span ng-click="EditThis()"ng-bind=item.Id ></span></td>
 <td ng-bind=item.Name></td>
</tr>

在我的 Controller 中,我有:

    $scope.EditThis = function () {
    alert(this.item.Id);
}

当我在 Chrome 调试器中查看它时,我看到有一个“this”对象,其中包含单个项目的所有值以及其他属性。这是一个美妙的、意想不到的惊喜。

这是标准的 AngularJS 功能吗,用于获取绑定(bind)到单击事件的对象?

最佳答案

您可能正在考虑 jQuery 事件处理程序,其中 this 是元素。

ng-click 但是没有元素上下文或模型数据上下文,它只是使用其所在的 Angular 范围的上下文调用其属性值中包含的表达式。

item 作为函数的参数传递:

ng-click="EditThis(item)"

然后在 Controller 中:

$scope.EditThis = function (item) {
    alert(item.Id);
}

关于javascript - 请解释 AngularJs 调试中的 ng-click 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32786386/

相关文章:

javascript - Jquery - 需要使用选定的单词验证文本字段

Javascript - 谁最重? (访问具有相同键名的数组对象中的所有值)

javascript - 我想知道我的指令模板中 <div> 的宽度,并将其存储在变量中我该如何实现

javascript - 如何在AngularJS Controller 中进行反向过滤

javascript - 无法在 IE11 中使用 SheetJS 在 AngularJS UI Grid 中上传 excel

javascript - 关于使用href的问题

javascript - isnan 函数接受点

javascript - empty .forRoot() 在 angular2 中到底做了什么?

java - 使用 Angularjs 从 Grails 后端获取 JSON 数据

javascript - 选择字段中的空白选项