学技术这件事儿本来就是学习现有的东西,然后变成自己的,本文当然也是借鉴的别人的东西,写出来作为一个对知识的巩固。
  1.网站用的是MVC模式,新建一个MVC项目,建立一个APP1Controller,作为页面的控制器,首页采用的是传统的frameset布局,没有用到前段的UI框架,项目架构示意图:

后台控制器中目前是这样的一个结构:

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.Mvc;
  6.  
  7. namespace App1.Controllers
  8. {
  9. public class App1Controller : Controller
  10. {
  11. //
  12. // GET: /App1/
  13.  
  14. public ActionResult Index()
  15. {
  16. ViewBag.Message = "Welcome!";
  17. return View();
  18. }
  19.  
  20. public ActionResult Top()
  21. {
  22. ViewBag.UserName = "超级管理员";
  23. ViewBag.AvailableBalance = "";
  24. return View();
  25. }
  26.  
  27. public ActionResult Left()
  28. {
  29. return View();
  30. }
  31.  
  32. public ActionResult Right()
  33. {
  34. return View();
  35. }
  36. }
  37. }

下面是前台的View页面:

首先附一张效果图:

1)Index.cshtml:

  1. @{
  2. ViewBag.Title = "";
  3. Layout = null;
  4. }
  5.  
  6. <!DOCTYPE html>
  7.  
  8. <html>
  9. <head>
  10. <meta name="viewport" content="width=device-width" />
  11. <meta charset="utf-8" />
  12. <title>Index</title>
  13. </head>
  14. <frameset rows="104,*,30" cols="*" frameborder="no" border="0" framespacing="0">@*顶部宽104px,底部30px,中间部分自适应*@
  15. <frame src="App1/Top" name="topFrame" scrolling="No" noresize="noresize" id="topFrame" title="topFrame" />
  16. <frameset cols="193,*" frameborder="no" border="0" framespacing="0" id="middenFram">@*左侧193px,右侧自适应*@
  17. <frame src="App1/Left" name="leftFrame" scrolling="No" noresize="noresize" id="leftFrame" title="leftFrame"/>
  18. <frame src="App1/Right" name="mainFrame" id="mainFrame" title="mainFrame" />
  19. </frameset>
  20. <frame src="/Content/Bootom.html" name="topFrame" scrolling="No" noresize="noresize" id="bootomFrame" title="topFrame" />
  21. </frameset>
  22. <noframes>
  23. <body></body>
  24. </noframes>
  25. </html>

说明:这里frameset的布局方式算是比较老的一种方式了,因为没有用到UI框架所以此处不做过多的追究,大体就是一个Top/Left/Right/Bottom的经典布局模式。

2)Top.cshtml:

  1. @{
  2. Layout = null;
  3. }
  4.  
  5. <!DOCTYPE html>
  6.  
  7. <html>
  8. <head>
  9. <title>Top</title>
  10. <meta name="viewport" content="width=device-width" />
  11. <meta charset="utf-8" />
  12. <link href="~/Content/sharestyle.css" rel="stylesheet" />
  13. <style type="text/css">
  14. .hightCss {
  15. color: yellow;
  16. }
  17.  
  18. body {
  19. margin: 0px;
  20. padding: 0px;
  21. }
  22. </style>
  23. <script src="~/Scripts/jquery-1.8.3.min.js"></script>
  24. <script type="text/javascript">
  25. //控制Left视图中菜单模块的显示
  26. function showLeftList(divId) {
  27. self.parent.frames["leftFrame"].showDivMenu(divId);
  28. }
  29. //菜单键及高亮显示
  30. $(function () {
  31. $(".nav_list ul li a").click(function () {
  32. $(".nav_list ul li a").css("background-color", "");
  33. $(".nav_list ul li a").css("color", "#ceebff");
  34. $(this).css("background-color", "#66d354");
  35. $(this).css("color", "white");
  36. });
  37. });
  38. </script>
  39. </head>
  40. <body>
  41. <div class="index_header">
  42. <div class="index_headertop">
  43. <div class="index_logo">
  44. <a href="#">
  45. <img src="/Images/icon_11.png" /></a>
  46. </div>
  47. <div class="lgstatus">
  48. 欢迎您,@ViewBag.UserName<i><em>20</em></i>可用余额:
  49. <span>$@ViewBag.AvailableBalance</span>&nbsp;&nbsp;&nbsp;&nbsp;
  50. <input type="submit" value="在线充值" class="btsty2" />
  51. </div>
  52. </div>
  53. <div class="clear"></div>
  54. <div class="index_headerbot">
  55. <div class="nav_list">
  56. <ul>
  57. <li><a href="#" onclick="showLeftList('divOrder')">业务管理</a>
  58. <div class="nav_out" style="display: none;">
  59. <i></i>
  60. <p><a href="#">订单管理</a></p>
  61. <p><a href="#">提单管理</a></p>
  62. <p><a href="#">身份证管理</a></p>
  63. </div>
  64. </li>
  65. <li class="slctd" onclick="showLeftList('divFinancial')"><a href="#">财务管理</a>
  66. <div class="nav_out" style="display: none;">
  67. <i></i>
  68. <p><a href="#">财务流水</a></p>
  69. <p><a href="#">提单对账</a></p>
  70. <p><a href="#">运单对账</a></p>
  71. <p><a href="#">异常费用对账</a></p>
  72. <p><a href="#">充值记录</a></p>
  73. </div>
  74. </li>
  75. <li><a href="#" onclick="showLeftList('divSysManage')">系统管理</a>
  76. <div class="nav_out" style="display: none;">
  77. <i></i>
  78. <p><a href="#">基本信息管理</a></p>
  79. <p><a href="#">认证管理</a></p>
  80. <p><a href="#">修改密码</a></p>
  81. </div>
  82. </li>
  83. </ul>
  84. </div>
  85. <div class="fucnbx"><span><a href="#"><i class="ilChannel"></i>运单打印客户端下载</a></span> <span><a href="#"><i class="i2"></i>API文档</a></span> <span><a href="#"><i class="i3"></i>退出</a></span> </div>
  86. </div>
  87. </div>
  88. </body>
  89. </html>

这里对应着效果图看一下,基本上就是点击Top页上面的标题,然后再Left页显示对应的下面的div里的内容(当前设置为不不显示了),点击事件是通过js代码实现的showLeftList方法,该方法里面有一个参数divId,然后通过 self.parent.frames["leftFrame"].showDivMenu(divId)来实现很显然是在Left页面中实现showDivMenu方法。

3)Left.cshtml:

  1. @{
  2. Layout = null;
  3. }
  4.  
  5. <!DOCTYPE html>
  6.  
  7. <html lang="zh">
  8. <head>
  9. <title></title>
  10. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  11. <meta charset="utf-8" />
  12. <link href="~/Content/sharestyle.css" rel="stylesheet" />
  13. <link href="~/Content/main.css" rel="stylesheet" />
  14. <style type="text/css">
  15. body {
  16. margin: 0px;
  17. padding: 0px;
  18. }
  19. </style>
  20. <script src="~/Scripts/jquery-1.8.3.min.js"></script>
  21. <script type="text/javascript">
  22. function ShowMenuList(id) {
  23. var objectobj = document.getElementById(id);
  24. var dtObj = document.getElementById("dt_" + id);
  25. if (objectobj.style.display == "none") {
  26. objectobj.style.display = "";
  27. dtObj.setAttribute("class", "head2");
  28. //其它菜单折叠
  29. $(dtObj).parent().parent().find("dt").not(dtObj).attr("class", "head1"); //折叠
  30. $(objectobj).parent().parent().find("ul").not(objectobj).css("display", "none"); //隐藏菜单子项
  31. } else {
  32. objectobj.style.display = "none";
  33. dtObj.setAttribute("class", "head1");
  34. }
  35. }
  36. //控制菜单模块的显示和隐藏
  37. function showDivMenu(divId) {
  38. $("#" + divId).css("visibility", "visible");
  39. $("#" + divId).siblings("div").css("visibility", "hidden");
  40. }
  41. $(function () {
  42. $(".box_n li a").click(function () {
  43. $(".box_n li a").removeClass("nav_sub");
  44. $(this).addClass("nav_sub");
  45. });
  46. });
  47. function goNewPage(url, name) {
  48. self.parent.frames["mainFrame"].addTab(url, name);
  49. }
  50. </script>
  51. </head>
  52. <body>
  53. <div class="leftbar" id="divOrder">
  54. <dl>
  55. <dt class="head2" id="dt_ulOrder" onclick='ShowMenuList("ulOrder")'>订单管理</dt>
  56. <ul class="box_n" id="ulOrder">
  57. <li><a href="#">批量新建订单</a></li>
  58. <li><a href="#">手工新建订单</a></li>
  59. <li><a class="nav_sub" href="#">订单草稿<span>(3)</span></a></li>
  60. <li><a href="#">已确认订单<span>(3)</span></a></li>
  61. <li><a href="#">待发货订单<span>(3)</span></a></li>
  62. <li><a href="#">已发货订单<span>(0)</span></a></li>
  63. <li><a href="#">订单回收站<span>(0)</span></a></li>
  64. <li><a href="#">退件<span>(0)</span></a></li>
  65. <li><a href="#">批量修改订单</a></li>
  66. </ul>
  67. </dl>
  68. <dl>
  69. <dt class="head1" id="dt_ulLading" onclick='ShowMenuList("ulLading")'>提单管理</dt>
  70. <ul class="box_n" id="ulLading" style="display: none;">
  71. <li><a href="#">创建托盘</a></li>
  72. <li><a href="#">未交货托盘<span>(6)</span></a></li>
  73. <li><a href="#">已交货托盘</a></li>
  74. <li><a href="#">创建交货单</a></li>
  75. <li><a href="#">交货单列表</a></li>
  76. <li><a href="#">待预扣提单<span>(3)</span></a></li>
  77. <li><a href="#">已预扣提单</a></li>
  78. </ul>
  79. </dl>
  80. <dl>
  81. <dt class="head1" id="dt_ulIdentityCard" onclick='ShowMenuList("ulIdentityCard")'>身份证管理</dt>
  82. <ul class="box_n" id="ulIdentityCard" style="display: none;">
  83. <li><a href="#">待验证身份证<span>(3)</span></a></li>
  84. <li><a href="#">无需验证身份证<span>(3)</span></a></li>
  85. <li><a href="#">已验证身份证<span>(3)</span></a></li>
  86. </ul>
  87. </dl>
  88. </div>
  89. <div class="leftbar" id="divSysManage"></div>
  90. <div class="leftbar" id="divFinancial">
  91. <dl>
  92. <dt id="dt_ulChannel" class="head2" onclick='ShowMenuList("ulChannel")'>渠道费用管理</dt>
  93. <ul class="box_n" id="ulChannel">
  94. <li><a href="#" onclick="goNewPage('a.html','渠道分类');">渠道分类</a></li>
  95. <li><a target="mainFrame" id="channelManage" onclick="goNewPage('/Channel/Index','渠道管理');">渠道管理</a></li>
  96. <li><a href="#">分区管理</a></li>
  97. <li><a href="#">价格管理</a></li>
  98. </ul>
  99. </dl>
  100. <dl>
  101. <dt id="dt_ulFinancial" class="head1" onclick='ShowMenuList("ulFinancial")'>财务管理</dt>
  102. <ul class="box_n" id="ulFinancial" style="display: none;">
  103. <li><a href="#">财务流水</a></li>
  104. <li><a href="#">提单对账</a></li>
  105. <li><a href="#">运单对账</a></li>
  106. <li><a href="#">异常费用对账</a></li>
  107. <li><a href="#">充值记录</a></li>
  108. </ul>
  109. </dl>
  110. </div>
  111. </body>
  112. </html>
  1. 本页面实现了Top页面中点击标题显示制定内容的功能,此外还有子标题的显示是通过ShowMenuList方法实现,参数为要显示的字标题列表的ulID属性。
    4Right.cshtml:
  1. @{
  2. Layout = null;
  3. }
  4.  
  5. <!DOCTYPE html>
  6.  
  7. <html>
  8. <head>
  9. <meta name="viewport" content="width=device-width" />
  10. <meta charset="utf-8" />
  11. <style type="text/css">
  12. html, body {
  13. margin: 0px;
  14. font-family: Arial, sans-serif;
  15. font-size: 12px;
  16. height: 100%;
  17. padding: 2px 4px 4px 0px;
  18. overflow: hidden;
  19. }
  20. </style>
  21. <title>Right</title>
  22. </head>
  23. <body>
  24. <div class="rightcont">
  25. Hello,World!
  26. </div>
  27. </body>
  28. </html>

这里面可以显示网站的主要内容了。

最后附录一下本网站需要用到的Js文件和Css样式文件下载链接:下载

下一节将实现一些面板的展开隐藏和Tab页效果。

ASP.NET MVC 搭建简单网站 --1.前端页面布局和基本样式实现的更多相关文章

  1. ASP.NET MVC搭建项目后台UI框架—1、后台主框架

    目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...

  2. ASP.NET MVC搭建项目后台UI框架—5、Demo演示Controller和View的交互

    目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...

  3. ASP.NET MVC搭建项目后台UI框架—7、统计报表

    ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NET M ...

  4. ASP.NET MVC搭建项目后台UI框架—8、将View中选择的数据行中的部分数据传入到Controller中

    目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...

  5. ASP.NET MVC创建的网站

    ASP.NET MVC创建的网站   最近在写一个网站,昨天刚写完,由于要和朋友一起测试,但是他电脑上没有环境,所以希望我在自己电脑上部署一下,让他直接通过浏览器来访问来测试,所以从昨晚到今天上午,通 ...

  6. FineAdmin.Mvc 使用ok-admin+ASP.NET MVC搭建的通用权限后台管理系统

    FineAdmin.Mvc 介绍 使用ok-admin+ASP.NET MVC搭建的通用权限后台管理系统RightControl后台layui模板不太好看,换成ok-admin v2.0重写一遍.项目 ...

  7. ASP.NET MVC搭建项目后台UI框架—11、自动加载下拉框查询

    ASP.NET MVC搭建项目后台UI框架—1.后台主框架 需求:在查询记录的时候,输入第一个字,就自动把以这个字开头的相关记录查找出来,输入2个字就过滤以这两个子开头的记录,依次类推. 突然要用到这 ...

  8. ASP.NET MVC搭建项目后台UI框架—2、菜单特效

    目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...

  9. ASP.NET MVC搭建项目后台UI框架—3、面板折叠和展开

    目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...

随机推荐

  1. Android手机监控软件设计实现

    一.需求分析: 随着IT信息技术的飞速发展,手机的普及,伴随着智能手机的出现及快速的更新换代,手机已不仅仅是一个通信工具,更是一个多功能的应用平台. 手机监控软件则是基于电脑监控软件的原理,植入手机平 ...

  2. javascript之css常用属性

    1. position : 属性值有absolute .fixed.relative absolute:生成绝对定位的元素,相对第一父元素进行定位: fixed :   生成绝对定位的元素,相对于浏览 ...

  3. Helpers\Date

    Helpers\Date The Date helper is used for calculations with dates. Date::difference($from, $to, $type ...

  4. iOS实用的小技巧

    1.快捷键 上传APP模拟器截图:comm+s 自动保存到桌面 2.storyboard 改型号尺寸 如从iPad改为iPhone6:

  5. 关于IE调试模式下才能显示效果

    要去除console.log() 低版本IE 没有开启调试模式  console.log()会导致报错

  6. 封装JDBC操作数据库的方法

    自己动手封装java操作数据库的方法: 一:目录结构 二:所需依赖的第三方jar包 这里只需引入mysql-connector-java-5.1.8-bin.jar,mysql数据库驱动jar包 三: ...

  7. Redis的安装与使用

    一.什么 Redis REmote DIctionary Server,简称 Redis,是一个类似于Memcached的Key-Value存储系统.相比Memcached,它支持更丰富的数据结构,包 ...

  8. CentOS下安装福昕PDF软件

    官方下载地址:http://www.foxitsoftware.cn/downloads/ tar -jxvf foxreader.tar.bz2问题:下载官方包以后解压,双击不能打开,也没有任何提示 ...

  9. jquery checkbox全选,全不选,反选方法,jquery checkbox全选只能操作一次

    jquery checkbox全选,全不选,反选方法, jquery checkbox全选只能操作一次, jquery checkbox全选只有第一次成功 >>>>>&g ...

  10. 3.x vector的用法

    #include<vector> //struct struct GOLD_STRUCT {     Sprite  * goldspSprite;     int goldValue; ...