[英]MVC Ajax partial view - load into different div depending on which view is returned
[英]Load partial view into div
我正在嘗試將部分視圖從調用視圖加載到div中,但是部分視圖會加載到新頁面中。 沒有太多的代碼,我已經嘗試了其他帖子的各種方式,但它仍然加載到一個新的頁面。 所以我想我可能會遺漏一些基本的東西。
調節器
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult Index()
{
return View();
}
public ActionResult Test()
{
return PartialView("Test");
}
視圖
<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>
@using (Ajax.BeginForm("Test", "Home", new AjaxOptions { InsertionMode=InsertionMode.Replace, UpdateTargetId = "mydiv" }))
{
@Ajax.ActionLink("Save", "Test", "Home", new AjaxOptions{ });
}
<div id="mydiv">
@Html.Partial("Test")
</div>
PartialView
<h1>Test</h1>
關於您的代碼的幾點評論:
Ajax.*
幫助程序不再使用已棄用的MS AJAX而不支持jQuery,因此您的腳本包含錯誤。 你需要包含jquery 因此,您的代碼可能看起來像行中的一些:
<script src="@Url.Content("~/scripts/jquery-1.4.4.js")" type="text/javascript"></script>
@Ajax.ActionLink("Save", "Test", "Home", new AjaxOptions {
InsertionMode = InsertionMode.Replace,
UpdateTargetId = "mydiv"
})
<div id="mydiv">
@Html.Partial("Test")
</div>
將此行添加到您的頁面(母版頁或布局)
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.js")" type="text/javascript"></script>
就在MicrosoftMvcAjax.js之后。
我認為你應該使用<input type="submit" />
而不是@Ajax.Actionlink(...)
在MVC4中,您可以在@Scripts.Render("~/bundles/jquery")
之后添加bundle @Scripts.Render("~/bundles/jqueryval")
,或者在頁面視圖的腳本部分添加腳本引用,如下所示:
@section scripts
{
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.js")" type="text/javascript"></script>
}
祝好運。
你的部分需要在ajax形式內
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.