В настоящее время у меня есть почти работает. Я использую следующее:Как фильтровать по нескольким опциям выбора в магистрали
this.collection.reset(jobArray, {silent: true});
var filterDepartment = this.filterDepartment;
var filterCategory = this.filterCategory;
var filterLocation = this.filterLocation;
var filteredResult = this.collection.where({
department: filterDepartment,
category: filterCategory,
location: filterLocation
});
this.collection.reset(filteredResult);
Это отлично работает, если я выбираю отдел, категорию и местоположение. Однако, если я хочу, чтобы он только отфильтровался по местоположению отдела +, оставив категорию как значение по умолчанию «все», он должен вернуть отфильтрованный/выбранный отдел и местоположение во всех категориях. Кроме того, если я выбираю категорию, а затем выбираю «все», он должен тогда искать только по местоположению.
У меня есть способ сделать это, но это много кода, конечно, есть более простой способ?
Это в основном работает, спасибо! Единственная проблема теперь в том, что как только я выбрал вариант, затем выберите параметр по умолчанию «все», все будет скрыто. Я попытался изменить свой код на что-то вроде: if ((filterDepartment) && (filterDepartment! = 'All')) – emily
'if (filterDepartment && filterDepartment! = 'All')' звучит правильно для меня. Уверены, что это 'все' (не' All' или 'ALL')? Также попробуйте сбросить фильтр после его назначения и посмотреть, правильно ли он (обновленный вопрос). –
Он работал, но мне пришлось обернуть все это в условном заявлении. Спасибо за вашу помощь! [Вот окончательный код] (http://stackoverflow.com/a/27283544/965940) – emily