页面呈现采用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. 翻译:Knockout 快速上手 - 5: 你需要知道的顶级特性 续

    Utilities Knockout 提供了许多可以你开发中使用的工具,你可以在 ko.utils 命名空间中找到它们,我最喜欢的工具如下所示: extend: 这个方法将两个对象合并在一起,调用这个 ...

  2. python-appium练习编写脚本时遇到问题

    遇到问题: 1.安卓4.2及以下系统无法识别resource-id属性 只能用text属性识别 2.输入中文无法识别 脚本最顶部增加#coding=utf-8 3.对象无法识别resource-id属 ...

  3. sqlserver 常用sql语句

    SELECT COUNT(*) FROM WeixinUser SELECT COUNT(*) FROM WeixinUser WHERE datediff(day, CreateTime,getda ...

  4. 操作系统是怎么工作的——函数的堆栈框架/嵌入式代码

    1.函数堆栈框架 1.1框架模型 call指令: 1)将eip中的下一条指令的地址A保存在栈顶: 2)设置eip指向被调用程序的代码处. ret指令:将地址A恢复到eip中 这样就将函数的调用变为顺序 ...

  5. PL/SQL 导入excel表格到oracle数据表

    通过使用PL/SQL 批量查询取数时,将excel中的每一列数据复制黏贴进新建的中间表,黏贴时会有贴歪的情况,也就是某些列会从第二第三行开始插入整列,导致数据乱掉,然后好像又不支持批量删除整列数据,所 ...

  6. JS里的onclick事件

    可以通过以下代码了解JS里的onclick事件: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml&quo ...

  7. QTP操作论坛回复编辑框----webelement

    Set bp=browser("micclass:=browser","index:=0").page("micclass:=page") ...

  8. dedecms后台登录如何去除验证码设置

    dedecms后台验证有时间输入总是不对,有时候却不显示,而输入验证码无疑是一个麻烦的过程,那么我们怎么样来去除后台验证码,实现输入帐号密码直接登录呢?我来为大家介绍一下: 让人感到烦恼的情况出现了! ...

  9. Something wrong with FTK's index search results

    My friend she told me last week that FTK could not "see" keywords in a plain text files wh ...

  10. Android knock code analysis

    My colleague she forgot the knock code and ask me for help. I know her phone is LG G3 D855 with Andr ...