关于ExtJS 是什么我就不多说了,本系列教程将介绍ExtJS 4.2的用法,这是本系列的第一篇,惯例从Hello World开始。

下载 ExtJS

ExtJS 目前的最新版本是 4.2,我们可以从官方网站下载最新版本的ExtJS。

下载地址:http://cdn.sencha.com/ext/gpl/ext-4.2.1-gpl.zip

官网地址:http://www.sencha.com/products/extjs

下载完成以后,我们就得到了ExtJS 的源代码、API文档,以及示例内容。我们先将压缩包解压缩,然后在IIS中新建一个网站,网站路径指向ExtJS 的目录,这样方便我们浏览ExtJS的文档等内容。不懂新建网站的朋友请自行百度谷歌。

我是在IIS 的Default Web Site中新建应用程序,使用默认的应用程序池,建好以后如下图:

我们浏览一下网站:

在ASP.NET MVC 中使用ExtJS 4.2

由于我本人是做ASP.NET Web 开发的,所以我在本教程中使用 ASP.NET MVC 作为示例,开发工具自然是微软的Visual Studio 2012(你也可以在任意的Web页面中使用ExtJS,作为一个JS库,它不受Web 服务器端开发的限制)。

首先我们新建一个ASP.NET MVC 4 应用程序,名称为 SampleExtJS。

然后在项目中添加一个文件夹“Resources”,我们将项目中所有用到的js、css、image等资源文件都放在这个文件夹中。

在js目录中新建ExtJS_4.2文件夹,用来存放ExtJS 4.2 的相关资源:

如果将所有的文件都添加到项目中,很明显是有些庞大了,所以我们可以添加用到的内容,简化后的目录结构如下:

接下来我们要在layout.cshtml 页面中添加引用。在使用ExtJS的时候,我们必须要引用脚本和样式两部分。脚本的内容可以通过bootstrap.js来自动添加,而样式则需要我们手动的来添加了,例如我们要在项目中使用neptune样式(neptune 是在4.2中新增的样式,看上去比较现代一些,但不支持IE6),那么我们需要引入的文件如下:

<link href="~/Resources/js/ExtJS_4.2/resources/css/ext-all-neptune.css" rel="stylesheet" />
<script src="~/Resources/js/ExtJS_4.2/bootstrap.js"></script>

完整的Layout代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<title>@ViewBag.Title</title>
<link href="~/Resources/js/ExtJS_4.2/resources/css/ext-all-neptune.css" rel="stylesheet" />
<script src="~/Resources/js/ExtJS_4.2/bootstrap.js"></script> @RenderSection("script", false)
</head>
<body>
@RenderBody()
</body>
</html>

Hello ExtJS

在引入文件后,我们要测试一下ExtJS 是否正常的工作了。在Views>Home>Index.cshtml中,我们为script 节添加内容:

@section script{
<script type="text/javascript">
function init() {
Ext.MessageBox.alert("ExtJS", "Hello ExtJS");
}
Ext.onReady(init);
</script>
}

同样在IIS中为Default Web Site 添加应用程序,路径为我们刚建好的SampleExtJS的根目录。然后浏览网站:

本地化ExtJS

在我们保留的ExtJS文件中,有一个locale目录,我们保留了其中的 ext-lang-zh_CN.js 文件,这个文件是我们汉语的本地化文件,我们只需要添加该文件的引用,就能够轻松的实现ExtJS的本地化:

<script src="~/Resources/js/ExtJS_4.2/locale/ext-lang-zh_CN.js"></script>

将这段代码添加到Layout文件中,然后刷新页面:

刚才的OK 现在变成了“确定”。

 

ExtJS 4.2 教程-01:Hello ExtJS的更多相关文章

  1. ExtJS 4.2 教程-03:使用Ext.define自定义类

    转载自起飞网,原文地址:http://www.qeefee.com/extjs-course-3-define-classes ExtJS 4.2 教程-01:Hello ExtJS ExtJS 4. ...

  2. extjs增删改查(自己调用extjs)

    jsp页面如下:materialsDetail.jsp <%@ page language="java" import="java.util.*" pag ...

  3. Node.js 教程 01 - 简介、安装及配置

    系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...

  4. Android快乐贪吃蛇游戏实战项目开发教程-01项目概述与目录

    一.项目简介 贪吃蛇是一个很经典的游戏,也很适合用来学习.本教程将和大家一起做一个Android版的贪吃蛇游戏. 我已经将做好的案例上传到了应用宝,无病毒.无广告,大家可以放心下载下来把玩一下.应用宝 ...

  5. springCloud系列教程01:Eureka 注册中心集群搭建

    springCloud系列教程包含如下内容: springCloud系列教程01:Eureka 注册中心集群搭建 springCloud系列教程02:ConfigServer 配置中心server搭建 ...

  6. 【Zigbee技术入门教程-01】Zigbee无线组网技术入门的学习路线

    [Zigbee技术入门教程-01]Zigbee无线组网技术入门的学习路线 广东职业技术学院  欧浩源 一.引言    在物联网技术应用的知识体系中,Zigbee无线组网技术是非常重要的一环,也是大家感 ...

  7. [译]Vulkan教程(01)入门

    [译]Vulkan教程(01)入门 接下来我将翻译(https://vulkan-tutorial.com)上的Vulkan教程.这可能是我学习Vulkan的最好方式,但不是最理想的方式. 我会用“d ...

  8. ExtJS入门教程01,Window如此简单,你怎能不会?

    这是一系列ExtJS教程,今天的是第一篇,主要介绍ExtJS中Window的基本用法.希望大家能够支持! 来吧,创建一个漂亮的弹出窗 var win = Ext.create("Ext.Wi ...

  9. Extjs MVC学习随笔01

    Extjs Mvc模式下的整个MVC框架体系即下图: 包含了Controller(实现方法层),Store(数据来源管理层),View(页面布局层).之所以用MVC我想是因为减轻针对某一页面的单一的J ...

随机推荐

  1. zoj 3827(2014牡丹江现场赛 I题 )

    套公式 Sample Input 33 bit25 25 50 //百分数7 nat1 2 4 8 16 32 3710 dit10 10 10 10 10 10 10 10 10 10Sample ...

  2. Java之路(二) 操作符

    操作符比较简单,这里只点一下注意事项和要点,请牢记. 操作符接受一个或多个参数,并生成一个新值. Java中,几乎所有的操作符都只能操作基本类型. 例外是 = == 和 !=,它们可以操作所有的对象. ...

  3. 踩过无数坑实现的哈夫曼压缩(JAVA)

    最近可能又是闲着没事干了,就想做点东西,想着还没用JAVA弄过数据结构,之前搞过算法,就试着写写哈夫曼压缩了. 本以为半天就能写出来,结果,踩了无数坑,花了整整两天时间!!orz...不过这次踩坑,算 ...

  4. poj-1459-最大流dinic+链式前向星-isap+bfs+stack

    title: poj-1459-最大流dinic+链式前向星-isap+bfs+stack date: 2018-11-22 20:57:54 tags: acm 刷题 categories: ACM ...

  5. InnoDB的锁机制浅析(二)—探索InnoDB中的锁(Record锁/Gap锁/Next-key锁/插入意向锁)

    Record锁/Gap锁/Next-key锁/插入意向锁 文章总共分为五个部分: InnoDB的锁机制浅析(一)-基本概念/兼容矩阵 InnoDB的锁机制浅析(二)-探索InnoDB中的锁(Recor ...

  6. 系统的Drawable(四)-LayerListDrawable

    系统的Drawable(四)-LayerListDrawable 学习自 https://blog.csdn.net/u014695188/article/details/52815444 Layer ...

  7. python tcp 实时抓包

    问题:之前我们系统上线后,因为是旧的系统,没有加统计的功能,比如用户喜欢那个页面,是哪些用户再访问,接口的负载能力等等. 解决办法:1,现有代码更改,添加功能.现有代码侵入太多,工作量比较大 2,想到 ...

  8. Intel Code Challenge Final Round (Div. 1 + Div. 2, Combined) A. Checking the Calendar 水题

    A. Checking the Calendar 题目连接: http://codeforces.com/contest/724/problem/A Description You are given ...

  9. 2010-2011 ACM-ICPC, NEERC, Moscow Subregional Contest Problem J. Joke 水题

    Problem J. Joke 题目连接: http://codeforces.com/gym/100714 Description The problem is to cut the largest ...

  10. Java clone() 浅克隆与深度克隆(转)

    以下文字转自:桔子园 http://www.blogjava.net/orangelizq/archive/2007/10/17/153573.html 现在Clone已经不是一个新鲜词语了,伴随着“ ...