Asp.Net MVC Ajax обновление содержимого таблицы - PullRequest
0 голосов
/ 15 июля 2010

В настоящее время у меня есть таблица на моей странице, которую мне нужно обновить с помощью Ajax.Я собирался визуализировать таблицу в частичном представлении, а затем просто вызвать частичное обновление рендеринга MVC, что было бы неплохо и просто.

Однако с тех пор я добавил несколько элементов управления сортировкой / фильтрациейв заголовке таблицы.Теперь я хотел бы обновить содержимое таблицы, не теряя эту информацию в строках заголовка.

Я не уверен, что это самое чистое решение.Моя таблица, вероятно, будет содержать около 500 строк.Может ли кто-нибудь дать совет?Спасибо

Ответы [ 3 ]

0 голосов
/ 15 июля 2010

Во-первых, сделайте вашу таблицу частичным представлением, поместите таблицу в div и дайте ID (что-то вроде «mytablediv»)

По вашему мнению, обратитесь к частичному представлению, используя Html.RenderPartial

В javascript, когда вам нужно обновить порцию, вызовите что-то вроде этого: (я полагаю, jquery доступен)

$('#mytablediv').load(url /* of the partial view*/);

Это получит обновленный html из вашего частичного представления и заменит его на что-тоу тебя было.

0 голосов
/ 15 июля 2010

Я думаю, что шаблоны javascript могут быть здесь работоспособным решением.

Может помочь следующее.

  1. jQuery шаблоны двигателей
  2. http://weblogs.asp.net/scottgu/archive/2010/05/07/jquery-templates-and-data-linking-and-microsoft-contributing-to-jquery.aspx

Другоеопция заключается в рендеринге на стороне сервера для рендеринга tr и обновления элемента tbody только таблицы, при условии, что у вас есть таблица с секцией tbody и секцией thead, которые содержат ваши фильтры.Настройка функции ajax должна иметь UpdateTargetId = "tbody-id"

0 голосов
/ 15 июля 2010

Я использую ajax-вызовы к действиям, которые возвращают данные json, и имею дело с рендерингом на клиенте с помощью jquery или некоторой симуляционной библиотеки.я думаю, что это лучший способ работать с MVC

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...