我正在从 VS2012RC 开发一个Asp.net MVC3网站。我正在尝试使用Ajax Actionlink创建网站的部分视图。但它没有用。在尝试了解我的团队和大量搜索之后所做的一切之后,我在TestProject上尝试了它。对我的进一步抑郁症也没有用。我试图解决这个问题很长一段时间,现在我打电话给。
这就是我创建测试项目的方式。请告诉我是否犯了错误,或者这是我的机器故障。
这是我的索引视图:
@{
ViewBag.Title = "Index";
}
<div>
@Ajax.ActionLink("This is a test ajax","testAjax",new AjaxOptions{ UpdateTargetId = "TestAjax" ,HttpMethod ="GET",InsertionMode =InsertionMode.InsertAfter})
</div>
<div id ="TestAjax">
</div>
部分视图是:
<h1>Testing testing testing testing</h1>
现在我的期望是,当我点击链接时,标题会出现在TestAjax部门的链接下方。但实际发生的是在主页中出现链接。当我点击链接时,它将转到“/ Home / testAjax”并仅显示部分视图。没有部分观点。
你能告诉我这个程序有什么问题。
编辑:
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title</title>
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/jquery-1.6.2.min.js")" type="text/javascript"> </script>
<script src="@Url.Content("~/Scripts/modernizr-2.0.6-development-only.js")" type="text/javascript"></script>
<script src="@Url.Content(" ~/Scripts/jquery.unobtrusive-ajax.js")" type = "text/javascript"> </script>
</head>
当我检查视图Index()的网页中的资源时:
<a href="/Home/TestAjax" onclick="Sys.Mvc.AsyncHyperlink.handleClick(this, new Sys.UI.DomEvent(event), { insertionMode: Sys.Mvc.InsertionMode.insertAfter, httpMethod: 'GET', updateTargetId: 'TestAjax' });">This is a test ajax</a>
答案 0 :(得分:0)
引用~/Scripts/jquery.unobtrusive-ajax.js
js文件不在我的布局/视图中。因为我不熟悉ajax。所以,那些刚接触MVC中的ajax并且通过Googling来到这里的人,首先检查上面提到的这个参考是在你的布局/视图中。