使用Ajax.ActionLink的MVC Ajax

时间:2011-12-15 20:56:05

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

我正在尝试创建简单的Ajax调用,但点击链接后,我得到一个空白页面,左上角有“Test”字符串:

在我的详情视图中,我有:

@Ajax.ActionLink("test", "AddPositive", new AjaxOptions() { UpdateTargetId = "countDiv" })

<div id="countDiv">
</div>

在控制器中:

public string AddPositive()
{
    String test = "Test";
    return (test);
}

行动确实被召唤。

在我导入的_Layout.cshtml中。

 <script src="@Url.Content("/Scripts/MicrosoftMvcAjax.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/MicrosoftAjax.js")" type="text/javascript"></script>

这可能是非常简单的事情,但是在通过Ajax的一些初学者教程之后仍然无法弄明白。感谢任何帮助,谢谢!

2 个答案:

答案 0 :(得分:3)

<script src="/Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.js" type="text/javascript"></script>
<script src="/Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="/Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>

您缺少jquery和jquery.unobtrusive-ajax文件。

我在MicrosoftMvcAjax.js或M.S.中有错误。忘记在Tutorial上提及这些文件。我几乎不使用这个功能(@Ajax.ActionLink)所以我很难理解为什么没有jQuery文件它没有用。

答案 1 :(得分:2)

您想要导入两个不同的.js文件,如下所示:

<script src="/Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="/Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script> 

另外,我可能错了,但你的Action不需要返回ActionResult吗?