Angular 如果 table 中的字段内容包含特定文本,则隐藏或显示按钮
Angular hide or show a button if the content of the field in table contains a specific text
在我的html
<div ng-app="myApp" ng-controller="customersCtrl">
<table border="1">
<tr ng-repeat="x in names">
<td>{{x.Name}}</td>
<td>{{x.City}}</td>
<td>{{x.Country}}</td></tr>
</table>
</div>
<a href="#" >Show or Hide Button</a>
在我的控制器中
var app = angular.module('myApp', []);
app.controller('customersCtrl', function($scope) {
$scope.names =[
{
"Name" : "Max Joe",
"City" : "Lulea",
"Country" : "Sweden"
},
{
"Name" : "Manish",
"City" : "Delhi",
"Country" : "India"
}
];
});
如果没有记录或国家中有 1 个是印度,我需要显示该按钮。我正在努力解决这个问题,但无济于事 http://jsfiddle.net/junedc/n8ejgtwa/1/ 非常感谢你们的帮助。
使用数组过滤器和数组长度来设置布尔值
var hasIndia = $scope.names.filter(function(item){
return item.Country === 'India'
}).length;
$scope.showButton = !$scope.names.length || hasIndia;
在视图中:
<a ng-show="showButton" href="#" >Show or Hide Button</a>
在我的html
<div ng-app="myApp" ng-controller="customersCtrl">
<table border="1">
<tr ng-repeat="x in names">
<td>{{x.Name}}</td>
<td>{{x.City}}</td>
<td>{{x.Country}}</td></tr>
</table>
</div>
<a href="#" >Show or Hide Button</a>
在我的控制器中
var app = angular.module('myApp', []);
app.controller('customersCtrl', function($scope) {
$scope.names =[
{
"Name" : "Max Joe",
"City" : "Lulea",
"Country" : "Sweden"
},
{
"Name" : "Manish",
"City" : "Delhi",
"Country" : "India"
}
];
});
如果没有记录或国家中有 1 个是印度,我需要显示该按钮。我正在努力解决这个问题,但无济于事 http://jsfiddle.net/junedc/n8ejgtwa/1/ 非常感谢你们的帮助。
使用数组过滤器和数组长度来设置布尔值
var hasIndia = $scope.names.filter(function(item){
return item.Country === 'India'
}).length;
$scope.showButton = !$scope.names.length || hasIndia;
在视图中:
<a ng-show="showButton" href="#" >Show or Hide Button</a>