Весь функционал реализован с помощью ObjectManager. Объекты выгружаются из JSON, порядка 3000. Необходимо реализовать фильтрацию, по виду объекта и цене.
Фрагмент JSON:
"properties": {
"code": "160058",
"cost": "8500",
"typeObject": "home",
"balloonContentBody": ""
},
Кнопки с чекбоксами:
<input class="" type='checkbox' value="home" checked=true/>
<input class="" type='checkbox' value="flat" checked=true/>
function mapFilter () {
var item = $( "input[type='checkbox']" );
obj = {};
item.each(function( index ) {
obj[$( this ).val()] = $( this ).prop('checked');
});
objectManager.setFilter(getFilterFunction(obj));
};
function getFilterFunction(categories){
return function(obj){
var content = obj.properties.typeObject;
return categories[content];
}
};
$('input[type='checkbox']').click(mapFilter);
Фильтер работает.
Необходимо еще фильтровать по цене (properties.cost) c сохранением результата первого фильтра.
function mapFilterCost () {
var costMin = $("#input_cost_min").val(),
costMax = $("#input_cost_max").val();
objectManager.setFilter('properties.cost >= "'+costMin+'" && properties.cost <= "'+costMax+'"');
};
Подскажите как объединить два фильтра. Спасибо.