gpt4 book ai didi

asp.net-mvc - 如何在 View 中加载部分 View ?

转载 作者:行者123 更新时间:2023-12-02 11:56:16 24 4
gpt4 key购买 nike

我对这种片面观点感到非常困惑。

我想在主视图中加载部分 View 。

这是一个简单的例子。

我正在加载 Homecontroller Index 操作的 Index.cshtml 作为主页。

在index.cshtml中,我通过创建一个链接

@Html.ActionLink("load partial view","Load","Home")

在 HomeController 中我添加了一个名为

的新操作
public PartialViewResult Load()
{
return PartialView("_LoadView");
}

在 _LoadView.cshmtl 中我只是有一个

<div>
Welcome !!
</div>

但是,当运行项目时,index.cshtml 首先呈现并显示链接“加载部分 View ”。当我单击它时,它会转到新页面,而不是将欢迎消息从 _LoadView.cshtml 渲染到 index.cshtml 中。

可能出了什么问题?

注意:我不想通过 AJAX 加载页面或不想使用 Ajax.ActionLink 。

最佳答案

如果您想直接在主视图中加载部分 View ,您可以使用Html.Action 帮助器:

@Html.Action("Load", "Home")

或者,如果您不想执行“加载”操作,请使用 HtmlPartialAsync 帮助程序:

@await Html.PartialAsync("_LoadView")

如果您想使用 Ajax.ActionLink,请将 Html.ActionLink 替换为:

@Ajax.ActionLink(
"load partial view",
"Load",
"Home",
new AjaxOptions { UpdateTargetId = "result" }
)

当然,您需要在页面中包含一个将显示部分内容的支架:

<div id="result"></div>

另外不要忘记包括:

<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.js")" type="text/javascript"></script>

在主视图中以启用 Ajax.* 帮助程序。并确保在您的 web.config 中启用了不显眼的 JavaScript(默认情况下):

<add key="UnobtrusiveJavaScriptEnabled" value="true" />

关于asp.net-mvc - 如何在 View 中加载部分 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7295835/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com