Ajax.ActionLink无法正常工作

时间:2014-09-30 16:20:13

标签: ajax asp.net-mvc-4 actionlink

我正在尝试在MVC4项目中使用Ajax.ActionLink。我已将这两个包含在我的布局页面中。

@Scripts.Render("~/Scripts/jquery-1.7.1.js")
@Scripts.Render("~/Scripts/jquery.unobtrusive-ajax.min.js")

在我的“关于”视图中,我有以下代码

<h3>Server Time</h3>

<div id="timeDisplay">
    Time shown here
</div>
<div>
    @Ajax.ActionLink("Click here for time", "ServerTime", new AjaxOptions{HttpMethod="GET", UpdateTargetId="timeDisplay"})

</div>

服务器时间操作方法只返回最新时间作为长时间字符串 第一次一切正常但当我第二次点击链接没有任何反应时,不会调用Server方法。我检查了FIDDLER并且没有发送Http消息。是因为它使用了缓存的响应。如何让它再次调用该方法

1 个答案:

答案 0 :(得分:0)

尝试使用ActionResult

装饰OutputCache(NoStore = true ..
[OutputCache(NoStore = true, Duration = 0, VaryByParam = "*")]
public ActionResult ServerTime()
{
    ...
}

或者尝试在AjaxOptions上使用HttpMethod = "POST"

 @Ajax.ActionLink("Click here for time", "ServerTime", new AjaxOptions{HttpMethod="POST", UpdateTargetId="timeDisplay"})