angularjs ng-repeat with Filter 或 ng-if 条件
angularjs ng-repeat with Filter or ng-if condition
如果是名称或值,我想呈现文本。如果它是 createdate 或 enventId,我不想循环。我正在尝试使用 Filter 和 ng-if 条件。它不起作用。
HTML 代码
<tr ng-repeat="event in events | filter:Name ">
<td >{{event.Name}} : </td>
<td>{{ event.Value }}</td>
</tr>
JS代码
Events: [
{
CreatedTime: "/Date(1420757322810-0800)/",
EventId: 13,
Name: "AdGroupId",
Value: "2367898"
},
{
CreatedTime: "/Date(1420757322810-0800)/",
EventId: 13,
Name: "AdGroupId",
Value: "2367898"
}
]
我希望结果应该是
广告组 ID :2367898
假设您正在寻找一个过滤器来过滤掉其中没有名称和值属性的事件。
这是给你的示例:
控制器:
$scope.filterNameValue = function(e){
if(angular.isDefined(e.Name) && angular.isDefined(e.Value))
return e;
};
Html
<table>
<tbody>
<tr ng-repeat="event in events | filter: filterNameValue">
<td >{{event.Name}} : </td>
<td>{{ event.Value }}</td>
</tr>
</tbody>
</table>
假设您要问的是如何排除既没有名称也没有值的项目,您将需要为此自定义函数。这应该足够了:
$scope.filterEvents = function(e){
return e.Name || e.Value;
};
然后:
<tr ng-repeat="event in events | filter:filterEvents">
<td >{{event.Name}} : </td>
<td>{{ event.Value }}</td>
</tr>
Example
或者,如果您说要根据指定的名称 and/or 值过滤值,您可以这样做:
$scope.filterEvents = function (e) {
return ($scope.Name || $scope.Value) &&
(!$scope.Name || $scope.Name === e.Name) &&
(!$scope.Value || $scope.Value === e.Value);
};
(HTML同上)
如果是名称或值,我想呈现文本。如果它是 createdate 或 enventId,我不想循环。我正在尝试使用 Filter 和 ng-if 条件。它不起作用。
HTML 代码
<tr ng-repeat="event in events | filter:Name ">
<td >{{event.Name}} : </td>
<td>{{ event.Value }}</td>
</tr>
JS代码
Events: [
{
CreatedTime: "/Date(1420757322810-0800)/",
EventId: 13,
Name: "AdGroupId",
Value: "2367898"
},
{
CreatedTime: "/Date(1420757322810-0800)/",
EventId: 13,
Name: "AdGroupId",
Value: "2367898"
}
]
我希望结果应该是
广告组 ID :2367898
假设您正在寻找一个过滤器来过滤掉其中没有名称和值属性的事件。
这是给你的示例:
控制器:
$scope.filterNameValue = function(e){
if(angular.isDefined(e.Name) && angular.isDefined(e.Value))
return e;
};
Html
<table>
<tbody>
<tr ng-repeat="event in events | filter: filterNameValue">
<td >{{event.Name}} : </td>
<td>{{ event.Value }}</td>
</tr>
</tbody>
</table>
假设您要问的是如何排除既没有名称也没有值的项目,您将需要为此自定义函数。这应该足够了:
$scope.filterEvents = function(e){
return e.Name || e.Value;
};
然后:
<tr ng-repeat="event in events | filter:filterEvents">
<td >{{event.Name}} : </td>
<td>{{ event.Value }}</td>
</tr>
Example
或者,如果您说要根据指定的名称 and/or 值过滤值,您可以这样做:
$scope.filterEvents = function (e) {
return ($scope.Name || $scope.Value) &&
(!$scope.Name || $scope.Name === e.Name) &&
(!$scope.Value || $scope.Value === e.Value);
};
(HTML同上)