我有一个 AngularJS 应用程序,它返回一个 json 对象列表,我遍历这些对象并将它们放入一个表中。
表格上的每个项目都有一个带有 ng-click 方法的“删除”按钮:
<td><a ng-click="testButton()" class="btn btn-danger btn-mini">Delete</a></td>
我正在使用 ng-resource 来删除该对象-效果很好。
但是,我还希望能够隐藏(或删除)包含对象的行和删除后的删除按钮 - 最好使用JQuery。
这是我的销毁方法:
$scope.destroyThing = function() {
$scope.thing= this.thing;
$scope.thing.$destroy();
$(this.thing).closest("tr").hide(); // something like this maybe
}
该方法很好地破坏了对象 - 它只是没有删除该行......所以我尝试记录单击按钮时返回的对象:
$scope.testButton = function() {
console.log(this);
}
这似乎返回了角度范围对象本身 - 但我找不到访问它相关的任何 DOM 元素的方法。
这是一个屏幕截图,向您展示从 testButton 函数返回的对象 - 当然是通过单击按钮触发的:
如何使用 JQuery 访问与 Angular 对象相关的 DOM 元素?
编辑
这是完整的表格行:
<tr ng-repeat="franchise in franchises">
<td ng-model="franchiseName">{{franchise.franchise_name}}</td>
<td ng-model="franchiseNumber">{{franchise.franchise_number}}</td>
<td><a class="btn btn-mini">Edit</a></td>
<td><a ng-click="destroyFranchise()" class="btn btn-danger btn-mini">Delete</a></td>
</tr>