【发布时间】:2011-12-19 18:15:13
【问题描述】:
我正在尝试将 ajax 与 asp.net mvc 应用程序一起使用。
我在 Index.cshtml 中的重要内容是:
<p>
@Ajax.ActionLink("Get DateTime", "GetDateTime", new AjaxOptions() { UpdateTargetId = "status" })
</p>
<span id="status">No Status</span>
在 HomeController.cs 中:
public string GetDateTime()
{
return DateTime.Now.ToLongTimeString();
}
使用此设置,我假设单击 UI 中的操作链接,只会更新跨度区域。但是,结果是我得到了一个全新的白页,时间打印在左上角。我什至没有得到 mvc 的蓝色母版页。
Web.config 声明 UnobtrusiveJavaScriptEnabled 是 true。
那么,如何让这个简单的 ajax 调用工作?
-pom-
【问题讨论】:
-
再次,发帖后找到了答案。因此,让它在 MVC 3 中工作的技巧是包含一个像这样的脚本库:
-
听起来从 Ajax.ActionLink 生成的链接实际上并未使用 ajax(未绑定 JavaScript)。也许您没有引用所有必需的 javascript 文件 (MicrosoftAjax.js)。
-
约翰,是的,就是这样。但确切地说,引用 MicrosoftAjax.js(和其他 Micorosft 开头的 js 文件)不会产生有效的解决方案,我得到的这个示例仅适用于上述 unobtrusive js 包含。我没有添加对 Microsoft.js 文件的直接引用。
标签: ajax asp.net-mvc-3