我正在使用复选框进行过滤,我的geojson具有状态属性。状态是值如下:如何在角度过滤器中包含“字符串包含”功能
状态 : “法3Q99”
或
状态 : “笏3Q99”
我需要按“Act”或“Fut”过滤。这里是我的过滤器:
function StatusFilter() {
return function (territorySubdivisions, typeFilter) {
var filtered = [];
angular.forEach(territorySubdivisions, function (subdivision) {
if (typeFilter.active == true && typeFilter.future == true) {
filtered.push(subdivision);
}
else if (typeFilter.active == true && typeFilter.future == false && subdivision.properties.status == subdivision.properties.status.indexOf('Act') != -1) {
filtered.push(subdivision);
}
else if (typeFilter.future == true && typeFilter.active == false && subdivision.properties.status == subdivision.properties.status.indexOf('Fut') != -1) {
filtered.push(subdivision);
}
});
return filtered;
};
};
这里是我试过的。
subdivision.properties.status.indexOf( '法案')!= -1
这当然是行不通的。我创建了一个工作的重击者。我包括其他orderBy和筛选代码以确保没有冲突。
<div class="col-xs-3">
<div class="checkbox checkbox-success checkbox-inline">
<input type="checkbox" id="active-checkbox-filter" ng-model="vm.typeFilter.active" ng-change="vm.statusActive('active')">
<label for="active-checkbox-filter"> Active </label>
</div>
</div>
<div class="col-xs-3">
<div class="checkbox checkbox-success checkbox-inline">
<input type="checkbox" id="future-checkbox-filter" ng-model="vm.typeFilter.future" ng-change="vm.statusFuture('future')">
<label for="future-checkbox-filter"> Future </label>
</div>
</div>
看起来就是它 – texas697
我还会将这些比较用布尔值更改为'booleanVariable'和'!booleanVariable'。 – mat3e
你可以调整蹲跳者。感谢您的帮助 – texas697