我有 div ( ContentPartial ),我用它来加载部分视图。
请注意,这个局部视图不是常数,它是从数据库动态命名的,有时是学生有时候是员工等等,......
我在前端使用 MVC ,在后端使用网络API ,我不想返回mvc控制器来查看局部视图,我需要使用j查询查看部分视图,如html render
这是我的div
<div class="ContentPartial hidden">
</div>
这是我从mvc控制器加载局部视图的ajax请求
$.ajax({
URL: "/" + controllerName + "/" + ActionName + "",
data: JSON.parse(requestData),
success: function (data) {
$('.ContentPartial').removeClass('hidden');
$('.ContentPartial').html(data);
}
})
这是我的控制器返回部分视图
public ActionResult ActionName()
{
return PartialView("ActionName");
}
我想要那样的东西
$('.ContentPartial').renderpartial('dynamic view name')
答案 0 :(得分:3)
ASP.NET MVC是服务器端框架,jquery是客户端库。没有请求就无法呈现视图。
但是你可以做一个控制器来渲染名称作为参数的视图
public RendererController : Controller
{
public ActionResult Render(string viewName)
{
return PartialView(viewName);
}
}
和客户:
function renderPartial($container, viewName) {
$.ajax({
URL: "/Renderer/Render?viewName=" + viewName,
success: function (data) {
$container.html(data);
$container.show();
}
});
}
renderPartial($('.ContentPartial'), 'dynamic view name');
请注意,您的视图需要位于共享文件夹中,以便控制器在没有完整路径的情况下找到它们。