在阅读了这里的其他一些帖子之后,我已经尝试通过单击链接加载部分视图(一旦我通过这个概念验证阶段,文本链接实际上可能会变为图像)。问题是我在点击时被定向到部分视图,而不是在我点击链接的视图中填充 div:
布局:
<script src="@Url.Content("~/scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>
风景:
@Ajax.ActionLink("Item 1 Ajax", "Details", "Portfolio", new { name = "test" }, new AjaxOptions
{
HttpMethod = "Post",
InsertionMode = InsertionMode.Replace,
UpdateTargetId = "row1Content",
OnComplete = "portfolioItemLoaded"
})
<div id="row1content"></div>
<script type="text/javascript">
function portfolioItemLoaded() {
alert("Done");
}
</script>
控制器:
public class PortfolioController : Controller
{
public ActionResult Details(string name)
{
return PartialView(name);
}
}
部分(显然命名为 test.cshtml):
<p>Item 1 test</p>
我错过了什么明显的东西吗?这是我第一次尝试在 MVC 中使用 AJAX,所以可能会出现一两个男生错误。
我计划有几个不同的 Ajax 动作链接调用不同的局部视图,因此我将名称传递给控制器。