Как добавить фильтр в страницу безмятежности?
Я пытаюсь сделать фильтр для страницы в безмятежности.
У меня есть страница под названием "Компании" и одна кнопка, чтобы открыть другую страницу, CompanyUsers, пользователей из этой компании.
![введите описание изображения здесь]()
Он уже открывает новую страницу, но он дает мне всех пользователей, я хочу фильтровать по строке, которую я нажал.
Я попытался изменить Контроллер CompanyUsers, добавляя параметр, но после этого я не знаю, как установить фильтр в CompanyUsers.
My Onclick в CompaniesGrid.ts
protected onClick(e: JQueryEventObject, row: number, cell: number): void {
super.onClick(e, row, cell);
let item = this.itemAt(row);
if ($(e.target).hasClass('usuario-row')) {
window.location.href = '/Cadastros/EmpresasUsuarios?empresaId=' + item.EmpresaId;
}
}
Как я могу сделать это с безмятежностью?
Есть ли простой способ сделать это?
Спасибо!!
Ответы
Ответ 1
Я нашел, как это сделать...
Вставить QuickFilter в столбец и getQuickFilters на Grid.ts
protected getQuickFilters() {
var flt = super.getQuickFilters();
var q = Q.parseQueryString();
if (q["jEmpresa"]) {
var empresa = Q.tryFirst(flt, x => x.field == "EmpresaId");
empresa.init = e => {
e.element.getWidget(Serenity.LookupEditor).value = q["jEmpresa"];
};
}
return flt;
}
Ответ 2
Быстрые фильтры
100% рабочий код; попробуйте этот код
var q = Q.parseQueryString();
if (q["jEmpresa"]) {
var empresa = Q.tryFirst(flt, x => x.field == "EmpresaId");
empresa.init = e => {
e.element.getWidget(Serenity.LookupEditor).value = q["jEmpresa"];
};
}
return flt;
}