一、目录

 1、多层架构+MVC+EF+AUTOFAC+AUTOMAPPER;

 2、MVC中验证码的实现(经常用,记录备用)

 3、Ligerui首页的快速搭建

 4、Ligerui Grid组件--学生信息列表。

二、正文

  (嘿,写完了才发现这篇文章挺水。本来还想说说那些JS代码的,想想还是不继续水了……但是写都写了,凑个数,哈哈)

  大多数信息管理系统首页都是ligerui官网首页这个模样,左边导航,右边一个iframe。高级点的带选项卡。

  

  在这个首页中,包含了ligerui很多组件:ligerLayout(布局)、Tab(选项卡)、ligerAccordion(面板)、ligerTree(树)。ligerLayout将页面划分块,一般就是上下左右中(有的控件,如easyui是东南西北中),主要菜单那一块就是左,右边内容就是右,也可能是中(隐藏右边)。Tab对应图中“我的主页”,操作观感和浏览器顶部选项卡一样。ligerAccordion在图中对应的是主要菜单、功能列表、应用场景、实验室,点击可以展开或者隐藏。ligerTree嘛就是功能列表下面那一堆喽。

  那我们的标题是“快速构建”,那咋个算快呢?Follow me:

  First Step:先去这下载ligerui源码:http://git.oschina.net/ligerui/LigerUI/,下载来的文件把Source文件夹拷贝进我们的VS解决方案当中;

  Second Step:第一篇文章说过,我们UI层是基于MVC的,那自然需要在任意Controller下新建一个action,比如我们是这样的:

  public class LigerUIController : Controller
{
//
// GET: /Admin/LigerUI/ public ActionResult Index()
{
return View();
} }

LigerUIController

  接着,在Index action方法体内右键添加视图Index。

  Third Step:来到我们的ligerui官网首页鼠标右键:

  点击过后框架的代码就出来喽,全部复制到我们第二步新建的Index视图当中。到这,已经成功一大半。

  Fourth Step:MVC里头因为引入了路由机制,所以我们所复制代码中引入的JS文件路径:

  需要修改:

  上图有展现了引入的两种常用方式,第一种是MVC自带的方法,第二种是使用绝对路径。上图路径是在我项目当中相关文件的路径。CSS样式引入和JS一致。

  Fifth Step:第四步修改完成后,把我们的项目运行起来,在浏览器地址栏输入刚才我们新建的action路径,比如我的就是:http://localhost:6273/ligerui/index ,哈,效果出来了:

  

  是不是和官网的不太一样,这是为啥呢?如果你是谷歌浏览器,按下F12快捷键,点击Console:

  

  看到木,错误全在这!前五个错误告诉我们哪些文件找不到,你只需要在index视图当中找到相应代码,并修改其路径(Source文件夹当中)就能达到和官网一致效果!

  可以看到我们就是复制源码,小小修改。

  还有就是左侧功能列表下的树控件的数据来自一个JS文件,从这里看出来:

  

  

  //树
$("#tree1").ligerTree({
//注意这里indexdata
data: indexdata,
checkbox: false,
slide: false,
nodeWidth: ,
attribute: ['nodename', 'url'],
onSelect: function (node) {
if (!node.data.url) return;
var tabid = $(node.target).attr("tabid");
if (!tabid) {
tabid = new Date().getTime();
$(node.target).attr("tabid", tabid)
}
f_addTab(tabid, node.data.text, node.data.url);
}
});

ligerTree

  source文件夹找到indexdata.js文件,按需修改节点名称即可。

  

  这种“查看网页源代码”对于学习前端控件挺有用的,看官网demo时候,右键“查看网页源代码”,仿照官网例子小改动来满足自己的需求。

  下几篇,用一个学生信息列表来看看ligerui中的grid组件。


  2013-12-03

Ligerui首页的快速搭建的更多相关文章

  1. 利用Columnal网格系统快速搭建网站的基本布局结构

    1.下面是一些对响应式设计提供了不同程度支持的CSS框架: (1)Semantic(http://semantic.gs); (2)Skeleton(http://getskeleton.com); ...

  2. Jenkins+Maven+SVN快速搭建持续集成环境(转)

    Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面看看我们是如何几分钟就快速搭建一个持续集成环境吧. 假设我们目前已经有2个maven项目:entities(J ...

  3. Jenkins 快速搭建持续集成环境

    持续集成概述 什么是持续集成 随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软件工程领域 ...

  4. Spring-Data-JPA尝鲜:快速搭建CRUD+分页后台实例

    前言:由于之前没有接触过Hibernate框架,但是最近看一些博客深深被它的"效率"所吸引,所以这就来跟大家一起就着一个简单的例子来尝尝Spring全家桶里自带的JPA的鲜 Spr ...

  5. USBWebServer 中文便携版 快速搭建 PHP/MySQL 网站服务器环境

    如果你是一位 WEB 开发者,或正在学习网页编程,你一定会发现,每到一台新电脑上想要在本地调试测试/运行网站代码都得搭建配置一遍 WAMP (Win.Apache.PHP.MySQL) 环境简直烦透了 ...

  6. 快速搭建一个SSM框架demo

    我之所以写一个快速搭建的demo,主要想做一些容器的demo,所以为了方便大家,所以一切从简,简单的3层架构 先用mysql的ddl,后期不上oracle的ddl ; -- ------------- ...

  7. EpiiAdmin 开源的php交互性管理后台框架, 让复杂的交互变得更简单!Phper快速搭建交互性平台的开发框架,基于Thinkphp5.1+Adminlte3.0+Require.js。

    EpiiAdmin EpiiAdmin php开源交互性管理后台框架,基于Thinkphp5.1+Adminlte3.0+Require.js, 让复杂的交互变得更简单!Phper快速搭建交互性平台的 ...

  8. 本地快速搭建MarkDown语法网站

    主要是在之前跟人学的快速搭建一个简单的网站,可以通过这样的方式把相关的文档美美的放在服务器上,然后给别人看也好,自己也能熟系熟系MarkDown的语法并学习,要是接口文档还是推荐通过swagger去实 ...

  9. 巨杉Tech | 十分钟快速搭建 Wordpress 博客系统

    介绍 很多互联网应用程序开发人员第一个接触到的网站项目就是博客系统.而全球使用最广的Wordpress常常被用户用来快速搭建个人博客网站.默认情况下,Wordpress一般在后台使用MySQL关系型数 ...

随机推荐

  1. python教程(二)·数据结构初探

    这一节,我来简单讲讲python自带的数据结构. 列表(list) 列表是常用的python数据结构,类似于C语言的数组,用来存储多个元素,与之不同的是,C语言的数组中的元素的类型是相同的,而列表可以 ...

  2. linux 搭建ss

    因为收藏的各种教程被xx,所以决定自己写 第一步.安装ss sudo pip install shadowsocks 第二步.配置IP.端口.密码.加密方式 vi /etc/shadowsocks.j ...

  3. JS本地保存数据的几种方法

    1.Cookie 这个恐怕是最常见也是用得最多的技术了,也是比较古老的技术了.COOKIE优点很多,使用起来很方便 但它的缺点也很多: 比如跨域访问问题:无法保存太大的数据(最大仅为4KB):本地保存 ...

  4. ubuntu安装cuda、cudnn

    环境: Ubuntu 16.04.4 LTS CUDA:8.0 CUDNN:5.1 CUDA下载:https://developer.nvidia.com/cuda-80-ga2-download-a ...

  5. 我和Python的Py交易》》》》》》 命名空间的小弟作用域

    命名空间的小弟作用域 在这要明确一个观点,在Python中万物皆对象,而变量指向的就是对象. 变量可以是 类名,函数名,储存数据的变量…… 对象可以是  类 ,被封装的一段代码(函数),数据…… 命名 ...

  6. 【转】Odoo:基本字段类型

    class Stage(models.Model): _name = 'todo.task.stage' _order = 'sequence,name' # String fields: name ...

  7. libevent学习六(Connect listeners )

      创建与释放 //backlog需要查询平台说明,在linux2.2以后 backlog就变成了已完成连接但未accept的队列的最大值(原来是处于syn状态的,现在换成sysctl 控制的参数tc ...

  8. unity实现框选效果

    思路: 在uinity中既可以将屏幕坐标转换为世界坐标,也可以将世界坐标转换为屏幕坐标.这样的话我们就可以通过判断物体在世界坐标转换为平幕坐标是否在鼠标框选的矩形区域坐标内,来判断物体是否在框选范围. ...

  9. 配置vConsole调试console

    1.使用 npm 安装: npm install vconsole 再使用webpack,然后js代码中 import VConsole from 'vconsole/dist/vconsole.mi ...

  10. (python)leetcode刷题笔记 01 TWO SUM

    1. Two Sum Given an array of integers, return indices of the two numbers such that they add up to a ...