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 ...
随机推荐
- [NOI2005]月下柠檬树(计算几何+积分)
题目描述 李哲非常非常喜欢柠檬树,特别是在静静的夜晚,当天空中有一弯明月温柔 地照亮地面上的景物时,他必会悠闲地坐在他亲手植下的那棵柠檬树旁,独自思 索着人生的哲理. 李哲是一个喜爱思考的孩子,当他看 ...
- 关于Autosar中的NM模块的理解
本篇文章主要介绍AutoSar中关于NM模块的理解. 阅读本篇文章希望达到的目的: 1. NM(网络管理)是用来做什么的: 2. AutoSar中网络管理的原理: 3.项目实例介绍 1. NM(网络管 ...
- LVS搭建负载均衡(一)NAT模型
应用场景:LVS配置负载均衡方式之一:nat 测试环境: 测试步骤: 1. 在主机lvs上安装ipvsadm lvs~]# yum install ipvsadm -y lvs~]# ipvsadm ...
- 让Mac 可以使用mysql -u用户直接连接数据库
在执行完安装版本的mysql数据库后,会发现执行mysql还是会出现 command not found的错误:解决方案 方案1.设置软连接到/usr/local/bin下在命令行下输入如下 ln - ...
- Vim保存时权限不足
保存时权限不足,由于打开时忘记在命令前添加sudo.我们并不需要放弃修改,从新以root权限打开 解决方案 命令模式使用:w !sudo tee %提权,保存
- matplotlib 将两张数据视图在一起显示
import numpy as np import pandas as pd from matplotlib import pyplot as plt if __name__ == "__m ...
- (转)多线程——继承Thread 类和实现Runnable 接口的区别
java中我们想要实现多线程常用的有两种方法,继承Thread 类和实现Runnable 接口,有经验的程序员都会选择实现Runnable接口 ,其主要原因有以下两点: 首先,java只能单继承,因此 ...
- django 通过邮箱和用户名都能登录
一. 在settings.py 文件中的#Application definition 下增加代码: AUTHENTICATION_BACKENDS=( 'users.views.CustomBack ...
- 计算基因上外显子碱基覆盖度(exon coverage depth):Samtool工具使用
假设想要计算ATP1A4基因上的外显子碱基覆盖度 首先查询这个基因所有exon的起始和终止位置,查询链接:http://grch37.ensembl.org/Homo_sapiens/Transcri ...
- JavaScript的函数声明与函数表达式的区别
1)函数声明(Function Declaration); // 函数声明 function funDeclaration(type){ return type==="Declaration ...