2015-01-06 34 views
0

我已經使用ngtable創建了一個動態表,並且從json中獲取了3列的表數據。在第四列的表中,綠色/紅色圓圈應該基於連接if成功與否。 我已經做了與JavaScript(不使用JSON)相同,其中第4列我設置了四個不同的ID,並基於ID的我已經改變了顏色使用AJAX如果連接成功。 在使用JSON的角度我不能這樣做,我創建了動態表,但如何設置ID的和從哪裏得到我無法做到的圖像。任何人都可以幫助。如何在angularjs中爲動態行設置id

<table ng-table> 
<thead> 
<tr> 
<th>Feature</th> 
<th>DaysUp</th> 
<th>Status</th> 
</tr> 
</thead> 
<tbody> 
<tr ng-repeat="user in users"> 
<td>{{user.name}}</td> 
<td>{{user.status}}</td> 
</tr> 
</tbody>  
</table> 
+0

u必須爲笏任何的jsfiddle演示ü迄今做了什麼? – Khaleel

+0

你能否試着簡化你的問題,並清楚地解釋你正在做什麼以及你期望的html輸出是什麼?也請張貼你的json。 –

回答

1

您可以使用作用域ID和索引值來生成唯一的ID。由於ng-repeat會創建子範圍,因此您將獲得一個範圍標識(範圍的唯一標識),您可以使用$索引附加標識。

 <tr ng-repeat="user in users" id="{{$parent.$id+'-'+$index}}"> 
      <td>{{user.name}}</td> 
      <td>{{user.status}}</td> 
     </tr> 

JSFiddle Demo

+0

謝謝...我用「'object - '+ $ index」來分配id的:) – Aditya

1

HTML:

<div ng-app="myapp" ng-controller="myctrl"> 

    <table> 
     <thead> 
     <tr> 
      <td>Name</td> 
      <td>DaysUp</td> 
      <td>Status</td> 
     </tr> 
     </thead> 
     <tbody> 
     <tr ng-repeat="user in users"> 
      <td>{{user.name}}</td> 
      <td>{{user.daysup}}</td> 
      <td><img width="20px" height="20px" ng-src="{{imageurls[user.status-1]}}" /> </td> 
     </tr> 
     </tbody> 
    </table> 
</div> 

腳本:

angular.module('myapp',[]) 
      .controller('myctrl',function($scope){ 
       $scope.users =[ 
        {'name':'xyz','daysup':2,'status':1}, 
        {'name':'abc','daysup':4,'status':2}, 
        {'name':'klm','daysup':6,'status':3}, 
        {'name':'yrt','daysup':9,'status':4} 
       ]; 
       $scope.imageurls = [ 
         'http://www.wpclipart.com/blanks/buttons/glossy_buttons/glossy_button_blank_yellow_circle.png', 
         'http://pix.iemoji.com/sbemojix2/0702.png', 
         'http://clker.com/cliparts/u/g/F/R/X/9/green-circle-md.png', 
         'http://pix.iemoji.com/sbemojix2/0701.png' 
       ]; 

      }); 

Plunker Demo