MVC |分部视图 PartialView()
介绍如何定义
其实它和普通视图没有多大区别,只是创建分部视图的时候视图里没有任何内容,你需要什么标签你自己加。第二就是分部视图不会执行_ViewStart.cshtml中的内容)
控制器
PartialViewDeomController控制器
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- using System.Web.Mvc;
- namespace MvcApp.Controllers
- {
- public class PartialViewDeomController : Controller
- {
- //
- // 分部视图的作用一般用于嵌到如一些正常的视图中去。(类似与自定义控件)相当于: Server.Execute(string path)
- public ActionResult PartialIndex()
- {
- //View()方法返回的视图默认都会去执行_ViewStart.cshtml中的内容
- //return View();
- //分部视图不会去执行_ViewStart.cshtml中的内容(分部视图以PartialView()返回)
- return PartialView();
- }
- }
- }
PartialIndex 视图
- <!--注意,创建分部视图后,视图里是没有任何东西的。自己需要什么标签,就加什么标签。这个视图的用法就是到时候嵌套到一些以View()返回的正常视图中去-->
- <select id="dp1">
- <option value="0">湖南</option>
- <option value="1">广东</option>
- <option value="0">上海</option>>
- </select>
- <select id="dp2">
- <option value="0">纽约</option>
- <option value="1">洛杉矶</option>
- <option value="0">华盛顿</option>>
- </select>
使用介绍(我们发现它与普通视图是差不多的)
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- using System.Web.Mvc;
- namespace MvcApp.Controllers
- {
- using MvcApp.Models;
- public class PartialViewDeomController : Controller
- {
- //
- // 分部视图的作用一般用于嵌到如一些正常的视图中去。(类似与自定义控件)相当于: Server.Execute(string path)
- public ActionResult PartialIndex()
- {
- var list = new List<T_UserInfo>()
- {
- new T_UserInfo(){Id=1,UserName="无盐海",Name="凡斌"},
- new T_UserInfo(){Id=1,UserName="阿宝",Name="周晶"},
- };
- //分部视图不会去执行_ViewStart.cshtml中的内容(分部视图以PartialView()返回)
- return PartialView(list);
- }
- }
- }
PartialIndex视图
- @model List<MvcApp.Models.T_UserInfo>
- <select id="dp1">
- @{
- foreach (var item in Model)
- {
- <option value="0">@item.Name</option>
- }
- }
- </select>
真实的使用介绍 (重点)
PartialViewDeomController控制器
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- using System.Web.Mvc;
- namespace MvcApp.Controllers
- {
- using MvcApp.Models;
- public class PartialViewDeomController : Controller
- {
- public ActionResult Index()
- {
- return View();
- }
- // 分部视图的作用一般用于嵌到如一些正常的视图中去。(类似与自定义控件)相当于: Server.Execute(string path)
- public ActionResult PartialIndex()
- {
- var list = new List<T_UserInfo>()
- {
- new T_UserInfo(){Id=1,UserName="无盐海",Name="凡斌"},
- new T_UserInfo(){Id=1,UserName="阿宝",Name="黄雪辉"},
- };
- //分部视图不会去执行_ViewStart.cshtml中的内容(分部视图以PartialView()返回)
- return PartialView(list);
- }
- }
- }
Index视图与PartialIndex分部视图。(注意:这里是在Index视图里调用PartialIndex分部视图)
- @{
- Layout = null;
- }
- @using MvcApp.Models;
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <title>Index</title>
- <script src="~/Scripts/jquery-1.8.2.js"></script>
- </head>
- <body>
- <div id="loadData"></div>
- <div>
- <!--第一种方式:同一控制起下调用分部视图-->
- @Html.Partial("PartialIndex", new List<T_UserInfo>() { new T_UserInfo() { Id = 1, UserName = "无盐海", Name = "凡斌" }, new T_UserInfo() { Id = 1, UserName = "阿宝", Name = "周晶" }, })
- <!--第二种方式:同一控制起下调用分部视图-->
- @{
- Html.RenderPartial("PartialIndex", new List<T_UserInfo>() { new T_UserInfo() { Id = 1, UserName = "无盐海", Name = "凡斌" }, new T_UserInfo() { Id = 1, UserName = "阿宝", Name = "周晶" } });
- }
- <!--第三种方式:可以跨控制器调用分部视图(注意:如果通过这种方式调用分部视图,如果在再PartialIndex这个action中有传参给分部视图,则在此处调用就不需要再传递参数了)-->
- @{Html.RenderAction("PartialIndex", "PartialViewDeom");}
- <!--第四种方式:也是可以跨控制器调用分部视图。和第三种是一样的-->
- @Html.Action("PartialIndex", new { controller = "PartialViewDeom" })
- <!--第五种方式:用ajax来调用:如:jquery的Load()方法-->
- <script type="text/javascript">
- $(function () {
- $("#loadData").load("/PartialViewDeom/PartialIndex"); //将PartialIndex分部视图中的内容加载到id为loadData这个元素中去
- })
- </script>
- </div>action
- </body>
- </html>
MVC |分部视图 PartialView()的更多相关文章
- MVC5 + EF6 + Bootstrap3 (14) 分部视图PartialView
Slark.NET-博客园 http://www.cnblogs.com/slark/p/mvc5-ef6-bs3-get-started-partialview.html 系列教程:MVC5 + E ...
- mvc 分部视图(Partial)显示登陆前后变化以及Shared文件夹在解决方案资源管理器中没有显示的问题
刚开始我的解决方案资源管理器中没有显示Shared文件夹,但Shared文件夹在项目中是实际存在的,我搜了下好像没有类似的解答(可能是我搜索的关键词不够准确).后来自己看了下vs2012. 其实解决方 ...
- asp.net mvc 使用ajax请求 控制器 (PartialViewResult)分部的action,得到一个分部视图(PartialView)的HTML,进行渲染
在asp.net mvc 使用ajax请求获取数据的时候,我们一般是返回json或者xml,然后解析这些数据进行渲染,这样会比较麻烦,可以请求一个 分部action,返回一个分部视图 直接可以渲染,不 ...
- 【兼容写法】HttpServerUtility.Execute 在等待异步操作完成时被阻止。关键词:MVC,分部视图,异步
异常处理汇总-后端系列 http://www.cnblogs.com/dunitian/p/4523006.html MVC6之前的版本,对分部视图的异步支持不是很好 问题: 视图里面有分布视图:@{ ...
- ASP.NET Core 入门教程 7、ASP.NET Core MVC 分部视图入门
一.前言 1.本教程主要内容 ASP.NET Core MVC (Razor)分部视图简介 ASP.NET Core MVC (Razor)分部视图基础教程 ASP.NET Core MVC (Raz ...
- ASP.NET Core 入门笔记8,ASP.NET Core MVC 分部视图入门
一.前言 1.本教程主要内容 ASP.NET Core MVC (Razor)分部视图简介 ASP.NET Core MVC (Razor)分部视图基础教程 ASP.NET Core MVC (Raz ...
- ASP.NET MVC部分视图PartialView的使用
在ASP.NET MVC项目中,部分视图PartialVieww使用很广.它实际就是在ASP.NET环境的用户自定义控件UserControl. 在控制器中,创建一个视图操作Action和一个部分视图 ...
- ASP.NET MVC3调用分部视图-PartialView的几种方式(集)
我们的网页通常会有好几个部分组成,一些公共的区域我们通常会做成PartialView(部分视图),但这些视图并不是完全固定的,所以还是需要 特定的Controller来控制.如果只是静态的html,虽 ...
- MVC分部视图@Html.Partial
加载分布视图的方式: //1.以视图名使用当前文件夹下的视图(如果没有找到,则搜索 Shared 文件夹) @Html.Partial("_test") //加载对应文件 /Vie ...
随机推荐
- jqgrid 时间戳转换成日期格式
原文 :http://blog.csdn.net/caoyuancsdn/article/details/52984524 Java script 接收到的时间参数是时间戳*1000 functio ...
- QTREE6&&7 - Query on a tree VI &&VII
树上连通块 不用具体距离,只询问连通块大小或者最大权值 可以类比Qtree5的方法,但是记录东西很多,例如子树有无0/1颜色等 一个trick,两个LCT分离颜色 每个颜色在边上. 仅保留连通块顶部不 ...
- 【BZOJ3289】Mato的文件管理 莫队+树状数组
题目大意:给定一个长度为 N 的序列,M 个询问,每次询问区间逆序对的个数. 题解:用树状数组加速答案转移. 代码如下 #include <bits/stdc++.h> #define f ...
- 【洛谷P3917】异或序列
题目大意:给定一个长度为 N 的序列,每个位置有一个权值,求 \[\sum\limits_{1\le i\le j\le n}(a_i\oplus a_{i+1}...\oplus a_j)\] 的值 ...
- (转)git checkout 撤销修改
背景:学习git相关命令 git撤销修改和版本回退 git status查看当前仓库的状态 liuzhipeng@exdroid43:~/pad/pad-test$ git status 位于分支 m ...
- 为什么 管理工具里没有Internet(IIS)管理器选项
如上图,localhost页能打开了,但是管理工具里没有iis管理器,主要原因是安装iis时候没有选择web管理工具,选取安装上就 有了
- 第三十四节,目标检测之谷歌Object Detection API源码解析
我们在第三十二节,使用谷歌Object Detection API进行目标检测.训练新的模型(使用VOC 2012数据集)那一节我们介绍了如何使用谷歌Object Detection API进行目标检 ...
- JQERY EasyUI Tabs 选项卡 自适应浏览器宽度高度 解决方案
<script type="text/javascript"> $(window).resize(function () { $('#tt').tabs({ width ...
- noi.openjudge 1.12.6
http://noi.openjudge.cn/ch0112/06/ 总时间限制: 2000ms 内存限制: 65536kB 描述 传说很遥远的藏宝楼顶层藏着诱人的宝藏.小明历尽千辛万苦终于找到传 ...
- linux报错汇总
一.出现cannot send message: Process exited with a non-zero status错误 查看log文件:sudo cat /var/log/mail.err, ...