Я хочу создать фильтр для источника данных с несколькими условиями. Я нашел эту ветку (HERE), где у парней почти такая же проблема, но я хочу сделать OR, а не AND между двумя моими операциями.Kendo DataSource Фильтрация с несколькими условиями
Существует код, который я до сих пор:
var filter = { logic: "OR", filters: [] };
var filterProduct = { logic: "AND", filters: [] };
var supplierValue = dropdownSupplier.value();
if (supplierValue != "00000000-0000-0000-0000-000000000000") {
filterProduct.filters.push({ field: "SupplierId", operator: "eq", value: supplierValue });
}
var categoryValue = dropdownCategory.value();
if (categoryValue != "00000000-0000-0000-0000-000000000000") {
filterProduct.filters.push({ field: "CategoryId", operator: "eq", value: categoryValue });
}
var typeValue = dropdownType.value();
if (typeValue != "00000000-0000-0000-0000-000000000000") {
filterProduct.filters.push({ field: "TypeId", operator: "eq", value: typeValue });
}
var filterSelect = { logic: "OR", filters: [] };
filterSelect.filters.push({ field: "Id", operator: "eq", value: "00000000-0000-0000-0000-000000000000" });
filter.filters.push(filterProduct);
filter.filters.push(filterSelect);
dropdownProduct.dataSource.query({ filter: filter });
В самом деле, что я хочу сделать это, чтобы иметь: (filterProduct) ИЛИ (filterSelect), но если я не использую «логики» в переменный фильтр, фильтр будет «И».
Большое спасибо
редактирования: Существует jsFiddle близко к тому, что я хочу сделать, но с «И»: Example В этом примере фильтр: [{[Freight = 11,61 ИЛИ Freight = 51,30] } И {[City StartsWith "Шарлеруа"]}]
Но я хочу, чтобы иметь somethign как: [{[Freight = 11,61 ИЛИ Freight = 51,30]} ИЛИ {[City StartsWith "Шарлеруа"]}]
я, наконец, получилось, я буду pu tmy код там через 8 часов, когда я смогу ... Но ключевое слово AND и OR должно быть строчным, и мне не нужно использовать переменную filterSelect – forumma