我有_Layout.cshtml
,内容是:
...
@RenderSection("MyTitle", required: false)
<div class="innerLR">
<div id="appContent">
@RenderBody()
</div>
</div>
...
当我启动应用程序时,我去这个动作Home/Index
,视图
public ActionResult Index()
{
return View(new BaseModel { Title = "Testing"});
}
视图 Index.cshtml :
@section MyTitle{ @Model.Title }
bla bla bla
这时候没关系,我看到了:Testing + bla bla bla。
现在Home/SecondAction
,当我单击链接时,我通过 Ajax 调用,控制器返回一个 PartialView 并在appContent
div 中显示内容。我这样称呼:
$.ajax({
url: 'Home/SecondAction',
type: 'POST',
data: {},
success: function (result) {
$(#appContent).html(result);
}
});
行动是:
public ActionResult SecondAction()
{
return PartialView(new BaseModel { Title = "Other Title" });
}
SecondAction.cshtml 是:
@section MyTitle{ @Model.Title }
bla bla again
这行不通,我会有任何错误,但我可以从第一个操作中获取文本,而不是:
其他 Titla bla bla 再次
要恢复,我想在返回PartialView
渲染部分时从_Layout.cshtml
谢谢,