$(这)altjs的替代品

时间:2016-02-14 05:46:19

标签: javascript jquery angularjs

我想在AngularJS中使用这个jquery代码

做类似的事情
AO-J1O...

HTML代码为:

x = $(this).next().next().val();
alert(x);

angular javacript是:

<span ng-click="ajax_update_button()" class="glyphicon glyphicon-pencil" style="cursor: pointer; color: red;"></span>
<span ng-click="ajax_delete([[ x.id ]])" style="cursor: pointer; color: red;">X</span> ----- 
<span>[[ x.name ]]</span>

主要问题是我正在寻找从jquery到angularjs的$(this)的替代方案

1 个答案:

答案 0 :(得分:1)

您应该使用ngIf指令使用标记值(例如我的示例中的edit)来呈现所需的HTML,而不是创建HTML。

  

ngIf指令根据{expression}删除或重新创建DOM树的一部分。如果分配给ngIf的表达式求值为false值,则从DOM中删除该元素,否则将元素的克隆重新插入DOM中。

您可以直接将x传递给

功能
 <span ng-click="ajax_update_button(selectedCustomer)" class="glyphicon glyphicon-pencil" style="cursor: pointer; color: red;">Update</span>
 <span>
 <span ng-if="!selectedCustomer.edit">{{selectedCustomer.name}}</span>
 <span ng-if="selectedCustomer.edit"><input type='text' ng-model="selectedCustomer.name"></span>
 </span>

然后,您可以访问其属性并根据您的要求操作对象

$scope.selectedCustomer = {
 name: "Male",
 edit:false
};

$scope.ajax_update_button = function(selectedCustomer){
     selectedCustomer.edit = !selectedCustomer.edit;
}

DEMO