#asp.net #html #iframe
#asp.net #HTML #iframe — фрейм #iframe
Вопрос:
Главной страницей нашего веб-сайта является HTML. Власть имущие хотят поместить asp.net календарь на этой главной странице. Есть ли лучший способ добиться этого, чем использовать iframe?
Комментарии:
1. Почему вы не можете преобразовать страницу?
2.
<asp:Calendar>
? Эта неуклюжая серверная часть? Я уверен, вы можете придумать хороший предлог, чтобы не использовать его. Черт возьми, сделайте jQuery UI DatePicker похожим на него, они не смогут заметить разницу3. @Daniel: вкратце… потому что мне сказали «нет». Если мне нужно рекомендовать использовать iframes, тогда ОК. Я просто хотел убедиться, что нет другого способа, кроме преобразования страницы, чтобы это произошло.
4. @Matti: Я полагаю, что они действительно хотят использовать календарь Infragistics. Мне нравится идея jQuery, предложенная вами, Сони и Джеймсом. Я доведу это до команды, ответственной за это, и посмотрю, как им это понравится.
Ответ №1:
Начните с этого…
<div id="calendar">
<a href="/calendar/">View our calendar</a>
</div>
Затем используйте AJAX-запрос для замены ссылки на фактический календарь… работает независимо от того, включен JavaScript или нет / успешно запускается!
Вот способ получения календаря с помощью jQuery…
$("#calendar").load("/ajax/calendar/");
Я рекомендую, чтобы первый URL (ссылка на календарь) ссылался на полную страницу, содержащую календарь, а второй URL (ссылка на ajax / calendar /) ссылался на что-то, что просто возвращает HTML для календаря, чтобы сделать его быстрее и менее громоздким…
Все URL-адреса вымышлены, и любое сходство с вашими реальными URL-адресами является чисто случайным.
Комментарии:
1. Я принял этот ответ, потому что это общая идея, которую я рекомендовал команде. Используйте jQuery datepicker в встроенном режиме для отображения календаря. Обработайте событие onMonthYearChanged, чтобы выполнить вызов ajax для получения списка событий за новый месяц, а затем просмотрите дни, выделяя даты, на которые запланированы события. Я составил краткую демонстрацию, и она работает довольно хорошо. Спасибо.
Ответ №2:
Если вы управляете IIS — вы могли бы просто сопоставить .HTML с ASP.NET обработчик и добавьте свой asp: calender куда хотите.
Ответ №3:
Если вы умеете использовать JavaScript, то я бы порекомендовал один из множества существующих JavaScript-календарей.
Комментарии:
1. На самом деле, нам нужно будет получить данные календаря из базы данных, и AJAX был бы хорош для этого. Вы не знаете о примере, который использует данные базы данных для заполнения календаря jQuery, не так ли?
2. Я не знаю такого примера, но наверняка кто-то делал это раньше. :]