2016-05-18 128 views
2

兩個基本問題的NG-重複在AngularJS比較,獲取數據,並將其與值從

1)我有一個控制器,在那裏我定義一個鍵,值結構的名單,我想訪問基於事件ID事件名稱和記錄它在控制檯

$scope.events = [ 
    {eventID:3200, eventName:"Event One"} 
    {eventID:3201, eventName:"Event Two"} 
]; 

我嘗試這樣做:

if($scope.events.eventID == 3200) { 
    console.log("Ok"); 
    } 

但它沒有工作:(

2)然後在我看來,我有一個表打印來自WS的數據,我想要的是根據我的$ scope.events列表中的eventID打印表上的描述,我有一個字段我ng重複名爲事件,這將讓我與列表中的eventID進行比較,但我不知道如何做到這一點。

<tr ng repeat d in data> 
    <td>d.Description</td> 
    <td>d.anyValue</td> 
</tr> 

歡迎任何幫助,我真的需要它,我是新來的角:)在控制器

回答

2

對於問題編號1,試試這個

if($scope.events[0].eventID == 3200) { 
    console.log("Ok"); 
} 
用於循環

使用此

angular.forEach($scope.events, function (value) { 
    if (value.eventId === 3200) { 
    { 
    console.log('OK'); 
    } 
}); 

關於問題號2,創建輔助函數來返回上的ID eventName的鹼。

$scope.getEventName = function (eventId) { 
    var result = ''; 
    angular.forEach($scope.events, function (value) { 
    if (value.eventID === eventId) { 
     result = value.eventName; 
     return false; 
    } 
    }); 
    return result; 
} 

<tr ng-repeat="d in (exportDataEventDesc.result.slice(5, exportDataEventDesc.result.length-2))"> 
    <td>{{d.Description}}</td> 
    <td>{{d.anyValue}}</td> 
    <td ng-bind="getEventName(d.merchMetrics.EVENT_ID)" style="text-align: left"></td> 
</tr> 
+0

感謝您的時間 – kennechu

+0

嗨mtamma,一個問題,更具體的我NG重複是這樣的: >接下來我有這個: 我需要的是將eventId的值放在缺省字段EVENT_ID上。 – kennechu

+0

var getEventName = function(){}和$ scope.getEventName = function(){} – kennechu

3

Add方法

$scope.search=function(obj){ 
    return obj.eventID === 3200; 
} 

添加它來查看

<tr ng-repeat="d in data | filter:search"> 
    <td>d.Description</td> 
    <td>d.anyValue</td> 
</tr> 
+0

感謝您的時間=) – kennechu

相關問題