Как применить фильтр к списку без сброса контрольных значений после нажатия кнопки поиска? - PullRequest
1 голос
/ 29 мая 2019

У меня есть список лиц и элементы управления фильтрацией в форме с кнопкой поиска. При нажатии кнопки поиска список заполняется отфильтрованными данными, но элементы управления поиском также теряют свои выбранные значения. Я не уверен, что это лучший способ сделать это.

Я попытался разделить представление на частичное и основное представление, т. Е. Список лиц находится в частичном представлении, а элементы управления фильтрацией - в главном представлении.

Список должен быть отфильтрован без потери значений элементов управления поиском. Какой должна быть лучшая практика для выполнения этой задачи? Образец изображения >> список с фильтрацией

1 Ответ

0 голосов
/ 29 мая 2019

Я бы предложил сначала использовать ViewBag для хранения данных в контроллере, например:

    public ActionResult YourSearchPage()
    {
        //Bind the data to a list here
        List<YourResultType> result = //Get from DB
        return View(result);
    }

    //When the user clicks the "Search" button
    [HttpPost]
    public ActionResult YourSearchPage(string keyword, int listingType...)
    {
        //Bind the data to a list here
        List<YourResultType> result = //Get from DB
        ViewBag.keyword = keyword;
        ViewBag.listingType = listingType;
        //Filter the list
        return View(result);
    }

А на виде привязать значение к элементам управления, как показано ниже:

<input type="text" id="keyword" class="keyword" value="@ViewBag.keyword" style="width: 80%;"/>
...