Partial View 顾名思义就是Html代码片段,应用于此HTML代码多次被页面加载时使用。(类似于WebForm程序中的用户控件)

注:PartialView和正常的View页面在访问时没有任何区别

一、PartialView的创建

在Views文件夹下,选中你要添加PartialView的文件右击=>添加=>点击View=>弹出添加View窗口(和正常添加View页面是一样的),在窗口中勾选【创建分部视图】下面就OK了。

二、加载分部视图

1、通过Ajax方式

Index页面代码

 1 @section scripts{
 2     <script type="text/javascript">
 3         window.onload = function () {
 4             document.getElementById("btnLoadPart").onclick = function () {
 5                 var xhr = new XMLHttpRequest();
 6                 xhr.open("get", "/Home/LoginPart", true);//访问控制器类Home中的LoginPart方法
 7                 xhr.setRequestHeader("If-Modified-Since", 0);//清除缓存
 8                 xhr.onreadystatechange = function () {
 9                     if (xhr.readyState == 4 && xhr.status == 200)
10                     {
11                         var htmlNew = xhr.responseText;
12                         document.getElementById("divCon").innerHTML = htmlNew;
13                     }
14                 };
15                 xhr.send(null);
16             };
17         };
18     </script>
19 }
20
21 <input type="button" value="请求分部视图" id="btnLoadPart" />
22 <div id="divCon"></div>

分部视图控制器类(Home)中的LoginPart方法代码

1         /// <summary>
2         /// 加载 分部视图的 Action 方法
3         /// </summary>
4         public ActionResult LoginPart()
5         {6             return PartialView();//PartialView方法不会加载布局页面【_ViewStart.cshtml】,View()方法会加载布局页面【_ViewStart.cshtml】
7         }

2、View直接加载分部视图

①通过@{Html.RenderPartial("分部视图的View页面路径【~/Views/Home/LoginPart.cshtml】");} //无返回值

②通过@Html.Partial("分部视图的View页面路径【~/Views/Home/LoginPart.cshtml】")//返回值类型为MvcHtmlString的字符串

③通过@{Html.RenderAction("在同一个控制器类中可以直接写方法名【LoginPart】");}//无返回值

④通过@Html.Action("在同一个控制器类中可以直接写方法名【LoginPart】")//返回值类型为MvcHtmlString的字符串

TempData传值:一次请求,通过Html.Action或Html.RenderAction请求页面时,Action方法之间的传值

如图:

转载于:https://www.cnblogs.com/WarBlog/p/7211208.html

MVC学习七:Razor布局之加载分部视图【PartialView】相关推荐

  1. H323plus的学习使用(3)——加载H.264插件

    H323plus的学习使用(3)--加载H.264插件 在h323plus的学习中,总是调试simple以尝试h323plus的能力集,在simple视频聊天中提到了一个关于ptlib插件的环境变量的 ...

  2. Pytorch深度学习(五):加载数据集以及mini-batch的使用

    Pytorch深度学习(五):加载数据集以及mini-batch的使用 参考B站课程:<PyTorch深度学习实践>完结合集 传送门:<PyTorch深度学习实践>完结合集 一 ...

  3. android开发学习之路——连连看之加载图片(三)

    正如前面AbstractBoard类的代码中看到的,当程序需要创建N个Piece对象时,程序会直接调用ImageUtil的getPlayImages()方法去获取图片,该方法将会随机从res\ dra ...

  4. 在ASP.NET MVC中加载部分视图的方法及差别

    在视图里有多种方法可以加载部分视图,包括Partial() .Action().RenderPartial().RenderAction().RenderPage()方法.下面说明一下这些方法的差别. ...

  5. ASP.Net MVC开发基础学习笔记(10):分部视图PartialView

    前言 本节我们来看分部视图PartialView的用法.首先我们会创建一个简单的静态分部视图.然后向这个视图中传入Model数据,使其变成动态分部视图.接下来介绍使用ChildAction来调用分部视 ...

  6. VS Code加载 Web 视图时出错

    问题描述: VS Code加载 Web 视图时出错: Error: Could not register service workers: InvalidStateError: Failed to r ...

  7. 3D Web可视化引擎HOOPS Communicator 2022 SP1更新亮点:新增支持2个格式、选择性加载 CAD 视图

    HOOPS Communicator 2022 SP1更新基于 HOOPS Visualize HPS 2022 SP1.HOOPS Exchange 2022 SP1 和 HOOPS Publish ...

  8. MVC |分部视图 PartialView()

    介绍如何定义 其实它和普通视图没有多大区别,只是创建分部视图的时候视图里没有任何内容,你需要什么标签你自己加.第二就是分部视图不会执行_ViewStart.cshtml中的内容) 控制器 Partia ...

  9. [OpenCV学习笔记3][图像的加载+修改+显示+保存]

    正式进入OpenCV学习了,前面开始的都是一些环境搭建和准备工作,对一些数据结构的认识主要是Mat类的认识: [1.学习目标] 图像的加载:imread() 图像的修改:cvtColor() 图像的显 ...

最新文章

  1. 使用Forms Authentication实现用户注册、登录 (二)用户注册与登录
  2. v8学习笔记(三) 运行时环境
  3. 浅析Asp.net MVC 中Ajax的使用
  4. 干货!专治设计师没灵感没创意没素材
  5. 问题 K: 输出月历 山东科技大学OJ
  6. 深度学习-吴恩达-笔记-5-深度学习的实践层面
  7. 昔年浅谈成都的百度推广公司靠谱吗这个问题?!
  8. Aop_AspectJ实现
  9. golang 格式“占位符”%d,%f,%s等应用类型
  10. 系统辨识 Identification Algorithm(基础篇)
  11. html文字闪烁特效代码,HTML最简单的文字闪烁代码
  12. 入行嵌入式开发若干年悟出的道理
  13. 一个游戏程序员的学习资料(全是好书)
  14. excel每行按模板导出为一个excel文件,可以指定列文本生成二维码或者条形码
  15. 一键就可像素化的神器 # Pixelator
  16. python 爬取整部漫画(简单的图片爬取)
  17. 操作系统 第6次作业
  18. python相关pyc文件的编译、运行和反编译
  19. 数据可视化BI平台选型调研报告 Superset VS Redash VS Metabase
  20. 如何写一个简单java接口的例子(内容详细,适合初学者)

热门文章

  1. Android获取所有App信息
  2. UTF-8编码和UTF-8-BOM编码的区别和处理
  3. 诺基亚Symbian算不算智能手机?
  4. 白盒测试junit实现三角形问题
  5. 网站被黑中毒WebShell木马的解决方案
  6. 【算法】DFS与BFS
  7. Windows端口开启关闭
  8. 数字签名技术及加密算法
  9. python将两张图片拼接成一张图_python实现两张图片拼接为一张图片并保存
  10. LTE传输模式(TM1 - TM9)