Я интегрирую jquery fullcalendar в свое приложение.
Вот код, который я использую:
в index.aspx:
<script type="text/javascript">
$(document).ready(function() {
$('#calendar').fullCalendar({
events: "/Scheduler/CalendarData"
});
});
</script>
<div id="calendar">
</div>
Вот код для Планировщика / CalendarData:
public ActionResult CalendarData()
{
IList<CalendarDTO> tasksList = new List<CalendarDTO>();
tasksList.Add(new CalendarDTO
{
id = 1,
title = "Google search",
start = ToUnixTimespan(DateTime.Now),
end = ToUnixTimespan(DateTime.Now.AddHours(4)),
url = "www.google.com"
});
tasksList.Add(new CalendarDTO
{
id = 1,
title = "Bing search",
start = ToUnixTimespan(DateTime.Now.AddDays(1)),
end = ToUnixTimespan(DateTime.Now.AddDays(1).AddHours(4)),
url = "www.bing.com"
});
return Json(tasksList,JsonRequestBehavior.AllowGet);
}
private long ToUnixTimespan(DateTime date)
{
TimeSpan tspan = date.ToUniversalTime().Subtract(
new DateTime(1970, 1, 1, 0, 0, 0));
return (long)Math.Truncate(tspan.TotalSeconds);
}
public ActionResult Index()
{
return View("Index");
}
У меня также есть следующий код внутри тега head на сайте site.master:
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server" />
<link href="<%= Url.Content("~/Content/jquery-ui-1.7.2.custom.css") %>" rel="stylesheet" type="text/css" />
<link href="~Perspectiva/Content/Site.css" rel="stylesheet" type="text/css" />
<link href="~Perspectiva/Content/fullcalendar.css" rel="stylesheet" type="text/css" />
<script src="~Perspectiva/Scripts/jquery-1.4.2.js" type="text/javascript"></script>
<script src="~Perspectiva/Scripts/fullcalendar.js" type="text/javascript"></script>
<script src="/Scripts/MicrosoftAjax.debug.js" type="text/javascript"></script>
<script src="/Scripts/MicrosoftMvcAjax.debug.js" type="text/javascript"></script>
Все, что я сделал, было скопировано с http://szahariev.blogspot.com/2009/08/jquery-fullcalendar-and-aspnet-mvc.html
При переходе к / scheduler / calendardata я получаю приглашение сохранить данные json, содержимое которых в точности соответствует тому, что я создал в функции CalendarData.
Что мне нужно сделать, чтобы правильно отобразить страницу?
Заранее спасибо,
Эран
Обновление: После комментариев Руны и Франси я добавил представление с именем CalendarData.aspx, идентичное index.aspx. Результаты:
- Навигация в / планировщик / календарь
по-прежнему дает мне диалог сохранения файла.
- Навигация в / планировщик / индекс, который я получаю
следующая ошибка во время выполнения в Visual
Studio: среда выполнения Microsoft JScript
ошибка: объект ожидается. В.С.
подчеркивает
$ (Документ) .ready (функция () ...)
код в теге скрипта.