Сортировка, когда две сетки находятся на одной странице
-
27-10-2019 - |
Вопрос
На моей странице у меня есть две веб-сообщения. Когда я нажимаю на один, чтобы сортировать этот столбец, оба сетки сортируются на этой колонке. Сортировка на столбец, которая только в одном, не сортируется вообще.
Я заметил сортировочные работы, сделав заголовок ссылку на той же странице с в строке запроса столбец и направление. Это объясняет, что оба сетка затронуты. Мне было интересно, у WebGrid есть функциональность, чтобы решить мою проблему или я должен исправить это сам.
То, как я планирую «исправить это сам» - это сначала добавить атрибуты ID для тегов таблицы, устанавливая HTMLATTribute. Затем я буду использовать jQuery, чтобы найти этот идентификатор для каждого WebGrid и включить этот идентификатор в параметрах ссылок. Затем при загрузке страницы с помощью сетки я принесу установить какую колонку для сортировки на основе этих параметров.
Мне кажется, что WebGrid не предназначен для страницы с другим WebGrid. Однако я чувствую, что в моей ситуации желательно. Я предпочитаю использовать некоторые стандартные способы (встроенные или только что использует все остальные).
Таким образом, вопрос в том, какой лучший способ сделать это? И если нет лучших способов, мой путь хороший путь (я забыл что-то)?
Заранее спасибо.
Решение
Я думаю, что вам нужно установить следующие свойства:
string fieldNamePrefix = null
//The value which prefixes the default querystring fields
string pageFieldName = null
//A value that replaces the default querystring page field
var grid1 = new WebGrid(canPage: true, canSort: true, ajaxUpdateContainerId: "grid1", fieldNamePrefix:"g1",pageFieldName: "p1");
var grid2 = new WebGrid(canPage: true, canSort: true, ajaxUpdateContainerId: "grid2", fieldNamePrefix:"g2",pageFieldName: "p2");