网站 粘度子域名网址查询
介绍如何定义
其实它和普通视图没有多大区别,只是创建分部视图的时候视图里没有任何内容,你需要什么标签你自己加。第二就是分部视图不会执行_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>
使用介绍(我们发现它与普通视图是差不多的)
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{//// 分部视图的作用一般用于嵌到如一些正常的视图中去。(类似与自定义控件)相当于: 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>