@ Shachar, вы задаете 2 вопроса в одном посте, это не лучший способ использовать этот сайт. : -)
Я не уверен, каков наилучший способ сделать двухуровневое меню, поэтому при обновлении нулевого уровня страницы пользователь работает с меню верхнего уровня.
В своем комментарии я связал вас с оригинальной статьей Suckerfish , которая стала очень распространенным /, возможно, наиболее распространенным способом сделать это. Дэвид Лиддл показал вам более свежую реализацию Suckerfish с использованием jQuery; если вы уже используете jQuery, то это ИМХО лучшее решение сегодня.
Поскольку вы спрашиваете об угле ASP.NET MVC, Syncfusion имеет пакет графических виджетов для ASP.NET MVC, а Telerik строит один с использованием jQuery и сообщества участие. Не уверен, есть ли у кого-нибудь из них виджет меню ...
Как заставить приложение обновлять / перенаправлять / загружать только нижнюю панель (основное содержимое страницы), а не всю страницу? ASP.NET MVC по умолчанию в значительной степени ориентирован на всю страницу.
Хм, я не думаю, что ASP.NET MVC "ориентирован на всю страницу", просто есть много разных мнений о том, как делать AJAX. ASP.NET MVC предоставляет вам отличные строительные блоки для AJAX, а не полное решение.
Прежде всего, вы уверены, что хотите это сделать? Я думаю, что вы имеете в виду "AJAH", асинхронный JavaScript и HTML. Начиная с этой статьи об AJAH : «При использовании настоящего AJAX выполняется вызов на сервер, возвращаются красиво отформатированные данные, а клиентское приложение извлекает данные из XML и заменяет любые элементы, которые необходимо заменить. на странице. С помощью AJAH возвращается глобус html и помещается на страницу. ".
AJAH не так часто используется сегодня , по следующим причинам:
- Вы не экономите значительное количество веса страницы (в байтах) по сравнению с более традиционным подходом, в котором используется кэширование для уменьшения веса последующих страниц.
- Вы не разделяете данные и представление, поэтому ваш код менее чист, и вы не создаете что-то, что можно было бы повторно использовать в подходах API или SOA позже.
ИМХО, наилучшее использование AJAX прямо сейчас , в отношении (улучшения удобства использования) по сравнению с (временем разработки и контроля качества), должно позволять страницам с высоким ROI загружать наборов данных через AJAX. Например, раздел статистики веб-приложения может загружаться как обычная страница (с начальным набором данных, показывающим график, который, скорее всего, хочет пользователь), и позволять пользователю изменять график с помощью вызова AJAX для новых данных.
ИМХО, вы также должны рассмотреть ненавязчивый Javascript . Это сложно объяснить, но все начинается с простого вопроса: «Что если пользовательский агент не поддерживает Javascript?». В приведенном выше примере с графиком пользователю не повезло, потому что он не мог изменить график без Javascript. Вот хорошая презентация, показывающая ненавязчивых примеров Javascript .
Другая сторона медали - полноценный AJAX (например, GMail) , где более или менее все построено с использованием виджетов Javascript UI. Это требует довольно много усилий, чтобы построить ...
Предполагая, что вы хотите пойти по пути AJAX, вот одно краткое введение в AJAX с использованием ASP.NET MVC и jQuery. После этого, возможно, может пригодиться одна из этих книг ?