Прежде всего, я не уверен, что это правильный заголовок для этого вопроса, но, надеюсь, я сделаю лучше, пытаясь объяснить, что мне нужно сделать.
Введение
Что я хочу сделать, это загрузить информацию о часто задаваемых вопросах относительно страницы, на которой я нахожусь. Скажем, я на странице www.domain.com/items/index, я хочу загрузить информацию о часто задаваемых вопросах, которая описывает, что можно сделать на этой странице и какие варианты доступны ... и т. Д. Затем пользователь переворачивается В строке поиска я хочу отобразить (сбоку страницы) короткий текст, который описывает поле поиска и как оно работает (например, сообщая им, что вы можете осуществлять поиск по ключевым словам или для определенного элемента или ... и т. д.). И так на остальных страницах и прочем на этих страницах.
Мозговой
Хорошо, так что я имею в виду до сих пор, и в чем я не уверен (поэтому я и задаю вопрос), так это:
- В базе данных создайте две таблицы: PageFAQ и ElementFAQ, где ElementFAQ является дочерним элементом PageFAQ. Причина, по которой я подумал об этом, заключается в том, что я загружаю PageFAQ и все ElementFAQ все вместе, выкидываю их на страницу и прячу их.
- На данный момент я бы отображал только сводный текст PageFAQ, в котором пользователю было бы больше рассказано о странице и некоторых доступных параметрах.
- Теперь, чтобы загрузить правильный ElementFAQ, нужно предпринять некоторые шаги на стороне сервера и клиента:
- Убедитесь, что идентификаторы / имена ElementFAQ в базе данных соответствуют идентификаторам скрытых элементов div, которые были выгружены на страницу ранее (когда был загружен PageFAQ относительно страницы)
- Когда пользователь переворачивает элемент (скажем, панель поиска), я использовал бы jQuery для поиска div с id faq_searchBar и отображал его innerHTML внутри бокового поля FAQ.
Задача
Все, что упомянуто выше, теоретически должно работать. Но я не могу придумать, как сопоставить «страницу», которую я сейчас просматриваю, и запись PageFAQ в базе данных. Как вы знаете, в ASP.NET MVC на самом деле нет страниц, есть только маршруты. Так есть ли какой-нибудь способ, которым я мог бы использовать данные маршрута для получения необходимого PageFAQ? Или я должен использовать строку запроса? Или есть лучший способ сделать это все вместе, желательно тот, который не использует магические строки.
UPDATE:
Было бы слишком много загружать PageFAQ и всех его дочерних элементов ElementFAQ и выводить их на страницу как скрытые div? Или лучше загрузить их через AJAX, когда пользователь переворачивает элемент?
Ваши предложения приветствуются.