我正在尝试在页面上加载部分视图,如下所示
$('#logindisplay').load('@Url.Content("/../../Shared/_LogOnPartial.cshtml")');
但是每当它说出指定的未找到时,很多次我改变了路径并且一切正常。
jquery是否支持这种类型的局部视图加载,或者每次都必须使用calan action方法
看到第二个答案我得出结论,每次我需要加载一个分开的视图我必须调用一个动作methid将返回局部视图,但它不接受在load函数中提到的整个路径编码为要加载的局部视图。
答案 0 :(得分:2)
但是每次它都说明未找到指定的......是这种类型的 jquery支持部分视图加载,或者每次都必须使用calan action方法
是的,jquery支持它。但是你必须记住,负载会进行一次服务器调用"这就是为什么你必须调用一个动作方法。
$('#logindisplay').load('@Url.Action("MethodName","Controller")');
答案 1 :(得分:1)
<强> HTML 强>
<div id="MyDiv" attr-Url="@Url.Action("ActionName", "ControllerName",
new { area = "Area Name" })">
</div>
<强> JQuery的强>
MyDiv.load($('#MyDiv').attr('attr-Url'), function () {
//Success Callback
});
编辑 - 1(替代方案)
@
{
Html.RenderPartial("~/Views/AnotherFolder/PView", ViewData.Model);
}
@Html.Partial("../MyViewFolder/Partials/_PartialView", Model.MyObject)
@Html.Partial("~/Views/ControllerB/Index.cshtml")