Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 如何使用angular ng repeat将类添加到特定的表tr_Angularjs_Ng Repeat_Ng Class - Fatal编程技术网

Angularjs 如何使用angular ng repeat将类添加到特定的表tr

Angularjs 如何使用angular ng repeat将类添加到特定的表tr,angularjs,ng-repeat,ng-class,Angularjs,Ng Repeat,Ng Class,在我的HTML中,我有一个表: <table> <tr ng-class="vm.status" ng-repeat="item in vm.itemsList"> <td>{{ item.name }}</td> <td> {{ item.description }} - <span ng-click="vm.disableRow()">Disable</span> &l

在我的HTML中,我有一个表:

<table>
  <tr ng-class="vm.status" ng-repeat="item in vm.itemsList">
    <td>{{ item.name }}</td>
    <td>
      {{ item.description }} - <span ng-click="vm.disableRow()">Disable</span>
    </td>
  </tr>
</table>

如果重要的话,我只需要单击一次就可以应用那个“禁用”类。一旦它被禁用,我就无法更改它,因此不需要开关选项。

我认为您应该使用数组来保存状态类

在控制器中:

vm.disableRow = function() {
  vm.status = 'disabled';
}
vm.status = [];
vm.disableRow = function(index) {
  vm.status[index] = 'disabled';
}
vm.disableRow = function(item) {
    item.status = 'disabled';
}
在以下观点中:

<table>
  <tr ng-class="vm.status[$index]" ng-repeat="item in vm.itemsList">
    <td>{{ item.name }}</td>
    <td>
      {{ item.description }} - <span ng-click="vm.disableRow($index)">Disable</span>
    </td>
  </tr>
</table>

我认为应该使用数组来保存状态类

在控制器中:

vm.disableRow = function() {
  vm.status = 'disabled';
}
vm.status = [];
vm.disableRow = function(index) {
  vm.status[index] = 'disabled';
}
vm.disableRow = function(item) {
    item.status = 'disabled';
}
在以下观点中:

<table>
  <tr ng-class="vm.status[$index]" ng-repeat="item in vm.itemsList">
    <td>{{ item.name }}</td>
    <td>
      {{ item.description }} - <span ng-click="vm.disableRow($index)">Disable</span>
    </td>
  </tr>
</table>

我将在每个项目中保存状态:

<tr ng-class="item.status" ng-repeat="item in vm.itemsList">
      <td>{{ item.name }}</td>
      <td>
  {{ item.description }} -<span ng-click="vm.disableRow(item)">Disable</span>
</tr>

我将在每个项目中保存状态:

<tr ng-class="item.status" ng-repeat="item in vm.itemsList">
      <td>{{ item.name }}</td>
      <td>
  {{ item.description }} -<span ng-click="vm.disableRow(item)">Disable</span>
</tr>

其实很简单。您无需在控制器中编写代码即可实现这一点。因为,您需要禁用该特定行,而不是切换它

<table>
  <tr ng-repeat="item in vm.itemsList" ng-click="item.disabled = true" 
            ng-class="{ disabled: item.disabled }">
    <td>{{ item.name }}</td>
    <td>
      {{ item.description }} - <span>Click the row to Disable</span>
    </td>
  </tr>
</table>  
这是正在工作的PLUNKER:
我添加了红色css颜色,只是为了在禁用时显示更改。

其实很简单。您无需在控制器中编写代码即可实现这一点。因为,您需要禁用该特定行,而不是切换它

<table>
  <tr ng-repeat="item in vm.itemsList" ng-click="item.disabled = true" 
            ng-class="{ disabled: item.disabled }">
    <td>{{ item.name }}</td>
    <td>
      {{ item.description }} - <span>Click the row to Disable</span>
    </td>
  </tr>
</table>  
这是正在工作的PLUNKER: 我添加了红色css颜色,只是为了在禁用时显示更改。

var app=角度。模数app,[]; app.controllerctrl,功能$scope{ $scope.items=[ {name:Ali,description:Java}, {名称:Reza,描述:C++}, {名称:阿米尔,描述:C} ]; }; .奇怪{ 颜色:红色; } .甚至{ 颜色:蓝色; } {{item.name} {{item.description}}-禁用 var app=角度。模数app,[]; app.controllerctrl,功能$scope{ $scope.items=[ {name:Ali,description:Java}, {名称:Reza,描述:C++}, {名称:阿米尔,描述:C} ]; }; .奇怪{ 颜色:红色; } .甚至{ 颜色:蓝色; } {{item.name} {{item.description}}-禁用
我相信:可能的解决方案可能是重复的,但我不确定我是否理解。我相信:可能的解决方案可能是重复的,但我不确定我是否理解。如果使用任何筛选,将崩溃$索引与已筛选数组中的原始数组索引不同repeat@charlietfl说得好。我一定会记住这一点。但在这种情况下,我不需要过滤。这个项目相当简单。如果使用任何过滤,它都会崩溃$索引与已筛选数组中的原始数组索引不同repeat@charlietfl说得好。我一定会记住这一点。但在这种情况下,我不需要过滤。这个项目很简单,我投了赞成票,因为我在第一个建议的基础上实现了这个想法。出于保密原因,我不能像我正在构建的实际应用程序那样详细。这是一种更正确的方法。我也喜欢在ng click上使用直接赋值,如果这是一个简短的操作。ng click=item.status='disabled'Upvoted,因为我实际实现了这个想法以及第一个建议。出于保密原因,我不能像我正在构建的实际应用程序那样详细。这是一种更正确的方法。我也喜欢在ng click上使用直接赋值,如果这是一个简短的操作。ng单击=项。状态='已禁用'