gpt4 book ai didi

jquery - 返回 Json 会导致 asp.net mvc 中的保存文件对话框

转载 作者:行者123 更新时间:2023-12-01 01:39:32 25 4
gpt4 key购买 nike

我正在将 jquery fullcalendar 集成到我的应用程序中。这是我正在使用的代码:

在index.aspx中:

<script type="text/javascript">
$(document).ready(function() {
$('#calendar').fullCalendar({
events: "/Scheduler/CalendarData"
});
});
</script>

<div id="calendar">
</div>

这是 Scheduler/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");
}

我在 site.master 的 head 标签内还有以下代码:

<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 函数中创建的内容。

我需要做什么才能正确呈现页面?

提前致谢,

埃兰

更新:根据 Rune 和 Franci 的评论,我添加了一个名为 CalendarData.aspx 的 View ,它与 index.aspx 相同。结果:

  • 导航至/scheduler/calendardata仍然给我保存文件对话框。
  • 导航到/scheduler/index 我得到Visual 中出现以下运行时错误Studio:Microsoft JScript 运行时错误:需要对象。 VS突出显示$(文档).ready(函数()...)scrip 标签中的代码。

最佳答案

尝试使用 JsonResult 而不是 ActionResult。

public JSonResult 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);
}

关于jquery - 返回 Json 会导致 asp.net mvc 中的保存文件对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2916323/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com