页面呈现采用Razor模板
 
1、母模板说明
_Main.cshtml:基础母模板
_ListLayout.cshtml:列表页面
_EditDialog.cshtml:编辑对话框
_EditLayout.cshtml:编辑页面
_ViewDialog.cshtml:查看对话框
_ViewLayout.cshtml:查看页面
(母版页在Views\Shared目录下,xxxLayout页都是基于_Main.cshtml页)
 
2、列表页和对话框
列表页:
列表页采用_ListLayout.cshtml作为母版页,可以在列表页编写以下Section
@section header:这部分内容将在包含在<head>,用于编写js和css。
@section toolbar:工具栏,

@section searchbar:搜索栏,

@section list:列表部分
如下图所示:
 
编辑页:
编辑页采用_ViewDialog.cshtml作为母版页,可以在列表页编写以下Section

@section header:这部分内容将在<head></head>呈现,用于编写js和css
其它部分为页面的body内容。
如下图所示,红框部分为编辑页的页面(在列表页用iframe加载编辑页)
 
编辑页包含以下js脚本
//点击“保存”按钮会调用到编辑页的函数onDialogClose()
function onDialogClose(msg) {
$.ajaxSubmit();
}
//该函数用ajax提交表单,提交成功后调用onComplete关闭窗口
function onComplete() {
$.dialog.close("ok"); //关闭窗口
}
3、 HtmlHelper

除了ASP.net MVC 提供的HtmlHelper外,框架还提供以下HtmlHelper
(在页面上添加@using aSite.UI.Html)
(1)、分页
  @Html.PageBar()
(2)、字典下拉框和字典标签
  @Html.DictDropDownList()、@Html.DictDropDownListFor()

  @Html.DictText()、@Html.DictTextFor()
(3)、枚举型下拉框和标签
  @Html.EnumDropDownList()、@Html.EnumDropDownListFor()、
  @Html.EnumText()、@Html.EnumTextFor()

(4)、表格
  @Html.GridHeader() //表格标题
(5)、复选框
  @Html.CheckBox()

(6)、树形结构的json数据
  @Html.TreeJsonFor()

(7)、文本显示   
  @Html.Text() 、@Html.TextFor() 、@Html.BooleanText()

(8)、树形列表选择
  @Html.TreeSelectorFor

(9)、选择控件
  @Html.SelectorFor

  
4、js和css
框架在页面用到以下JS
  jquery1.7、bootstrap2.3.2
jq插件:
  jquery-tipsy:用于显示提示信息
  zTree:树形列表
  jquery.cookie:cookie读写
.net MVC自带的js:
  jquery.unobtrusive-ajax.js、jquery.validate.min.js、jquery.validate.unobtrusive.js
 
其中的有对jquery.unobtrusive-ajax.js、jquery.validate.unobtrusive.js、bootstrap-modal.js 3个js文件做小部分的修改,具体可参考代码注释,另外新增css文件bootstrap-ext.css覆盖部分bootstrap自身的样式。
框架提供的js库
  common.js:提供常用的js函数
  dialog.js:对话框相关的js,基于bootstrap-modal.js
 
5、导航和菜单栏
导航和菜单是基于MvcSiteMap实现
Views/Shared/DisplayTemplates目录下提供导航和菜单显示的模板
用法可参考文章:MvcSiteMap用法

SRF之页面的更多相关文章

  1. 简单快速的开发框架-SRF

    1.是什么 SRF(simply and rapid development framework) 一套基于asp.net mvc的开发框架,致力于提供简单.快速的企业应用开发方案,旨在解决企业应用开 ...

  2. multiwii 2.4配置页面中文注释

                                                                                                         ...

  3. SRF之权限控制

    框架目前提供url访问.菜单和页面元素的权限控制和数据权限,权限基于角色来分配,1个用户可以属于多个角色,权限项分模块.页面.操作3级别,其中模块.页面用于url和菜单的控制,操作是对页面元素的控制. ...

  4. SRF之数据验证

    实现表单输入数据的验证,包括客户端验证和服务器端验证 如何使用 数据验证在业务层的实体类字段上增加数据验证的特性,例如 public class User { [Required(ErrorMessa ...

  5. 页面嵌入dom与被嵌入iframe的攻防

    1.情景一:自己的页面被引入(嵌入)至别人的页面iframe中 if(window.self != window.top){ //url是自己页面的url window.top.location.hr ...

  6. ASP.NET Core应用的错误处理[3]:ExceptionHandlerMiddleware中间件如何呈现“定制化错误页面”

    DeveloperExceptionPageMiddleware中间件利用呈现出来的错误页面实现抛出异常和当前请求的详细信息以辅助开发人员更好地进行纠错诊断工作,而ExceptionHandlerMi ...

  7. nodejs进阶(4)—读取图片到页面

    我们先实现从指定路径读取图片然后输出到页面的功能. 先准备一张图片imgs/dog.jpg. file.js里面继续添加readImg方法,在这里注意读写的时候都需要声明'binary'.(file. ...

  8. ASP.NET Core应用的错误处理[2]:DeveloperExceptionPageMiddleware中间件如何呈现“开发者异常页面”

    在<ASP.NET Core应用的错误处理[1]:三种呈现错误页面的方式>中,我们通过几个简单的实例演示了如何呈现一个错误页面,这些错误页面的呈现分别由三个对应的中间件来完成,接下来我们将 ...

  9. 百度MIP移动页面加速——不只是CDN

    MIP是用CDN做加速的么?准确答案是:是,但不只是. MIP全称Mobile Instant Pages,移动网页加速器,是百度提出的页面加速解决方案.MIP从前端渲染和页面网络传输两方面进行优化, ...

随机推荐

  1. 剑指Offer:面试题16——反转链表(java实现)

    问题描述 定义一个函数,输入一个链表的头结点,反转该链表并输出反转后的链表的头结点.链表结点如下: public class ListNode { int val; ListNode next = n ...

  2. 【caffe-windows】 caffe-master 之 classfication_demo.m 超详细分析

    classification_demo.m 是个很好的学习资料,了解这个代码之后,就能在matlab里用训练好的model对输入图像进行分类了,而且我在里边还学到了oversample的实例,终于了解 ...

  3. Win2D 官方文章系列翻译 - DPI (每英寸点数)和 DIPs(设备独立像素)

    本文为个人博客备份文章,原文地址: http://validvoid.net/win2d-dpi-dips/ 本文旨在解释物理像素与设备独立像素(DIPs, device independent pi ...

  4. 利用Oracle VM VirtualBox部署自己的owncloud存储服务器

    最近在弄文档方面的工作,所以想找个能够自动备份且带历史版本的网盘,找了很久没找到,所以决定自己部署一个私人服务器. 找了很久.试了很久终于确定owncloud能够满足自己的要求,而且还是开源免费的. ...

  5. html中button的type属性

         接触web开发不久,今天遇到了一个问题,点击button按钮,浏览器没有反应,尝试了自己可以想到的所有办法,还是无果.只得请教他人,才发现是button的type属性搞得怪,原来:     ...

  6. jenkins smtp设置调试

  7. AX 条码打印

    AX 条码打印集成在BarCode类及其之类barcode*. 由子类的defaultFont方法指定字体属性. eg, BarcodeCode39 指定条码字体"BC C39 3 to 1 ...

  8. WF4与MVC结合示例

    很多初学者,首先最想解决的问题是:如何将WF与MVC程序相结合.由于Web程序属于长时间运行的流程,因此持续化功能的运用就非常重要了. 本文将结合书签.WorkflowApplication.生命周期 ...

  9. (笔记)angular 包含关系的controller参数传递

  10. leetcode 67

    67. Add Binary Given two binary strings, return their sum (also a binary string). For example,a = &q ...