EXTJS入门实例

最近了解了下EXTJS,想记录下来自己的成果,希望对刚入门EXT的同学有点帮助,首先来做个简单的实例。

一、去官网下载EXTJS包extjs5,这里采用的是5.0版本,下面就正式开启吧!

二、解压extjs包,找到

  ext-all.js基础包(\ext-5.0.0\build);

  ext-all-debug.js基础包,开发的时候使用,报错会详细些(\ext-5.0.0\build);

  选一个合适的主题,这里我使用crisp,找到ext-theme-crisp-all.css和images文件(\packages\ext-theme-crisp\build\resources)

三、新建index.html页面并引用ext-all-debug.js、ext-theme-crisp-all.css,新建index.js应用启动设置文件、新建app文件夹放controller/view/model/store

index.html

<!DOCTYPE HTML>
<html>
<head>
    <title>demo</title>
    <link href="../Ext/ext-theme-crisp-all.css" rel="stylesheet" type="text/css" />
    <script src="../Ext/ext-all-debug.js" type="text/javascript"></script>
    <script src="index.js?v=20140721017" type="text/javascript"></script>
</head>
<body>
</body>
</html>

  

index.js

Ext.Loader.setConfig({
    enabled: true
});

Ext.application({
    name: ‘Demo1‘,
    appFolder: ‘app‘,

    models: [

    ],
    stores: [

    ],
    controllers: [
        ‘MyController‘
    ],
    views: [
        ‘MyViewport‘
    ],
    launch: function () {
        var app = new Demo1.view.MyViewport();
    }
});

四、创建视图、控制器

在view文件夹下添加视图MyViewport.js,下面我在视图里面加了个简单的表单

MyViewport.js

Ext.define(‘Demo1.view.MyViewport‘, {
    extend: ‘Ext.container.Viewport‘,
    initComponent: function () {
        var me = this;

        Ext.applyIf(me, {
            items: [
                {
                    xtype: ‘form‘,
                    title: ‘用户修改密码‘,
                    width: 300,
                    bodyPadding: 10,
                    defaultType: ‘textfield‘,
                    border: false,
                    items: [
                        {
                            allowBlank: false,
                            id: ‘txtPwdOld‘,
                            fieldLabel: ‘原密码‘,
                            name: ‘pwdOld‘,
                            labelWidth: 100,
                            emptyText: ‘原密码‘,
                            inputType: ‘password‘
                        },
                        {
                            allowBlank: false,
                            id: ‘txtPwdNew‘,
                            fieldLabel: ‘新密码‘,
                            name: ‘pwdNew‘,
                            labelWidth: 100,
                            emptyText: ‘新密码‘,
                            inputType: ‘password‘
                        },
                        {
                            allowBlank: false,
                            id: ‘txtPwdNew2‘,
                            fieldLabel: ‘再次输入新密码‘,
                            name: ‘pwdNew2‘,
                            labelWidth: 100,
                            emptyText: ‘再次输入新密码‘,
                            inputType: ‘password‘
                        }
                    ],
                    buttons: [
                        {
                            text: ‘保存‘,
                            id:‘btnSavePwd‘
                        }
                    ]
                }
            ]
        });

        this.callParent(arguments);
    }

});

在controller文件夹下添加控制器MyController.js,程序代码都可以写在控制器里面,用得最多的就是监听控件事件,下面简单举例,对表单中的保存按钮监听点击事件

MaController.js

Ext.define(‘Demo1.controller.MyController‘, {
    extend: ‘Ext.app.Controller‘,

    init: function (application) {
        this.control({
            ‘[id=btnSavePwd]‘: {
                click: this.onOK
            }
        });
    },

    //保存
    onOK: function (obj) {
        var form = obj.up(‘form‘).getForm();
        if (form.isValid()) {
            Ext.Msg.alert(‘信息提示‘, ‘已保存‘);
        }
    }
});

  

到这里,程序已经可以运行了,源码:http://pan.baidu.com/s/1i3rBS8X

EXTJS入门实例

时间: 2024-10-20 07:41:01

EXTJS入门实例的相关文章

无废话ExtJs 入门教程十六[页面布局:Layout]

无废话ExtJs 入门教程十六[页面布局:Layout] extjs技术交流,欢迎加群(201926085) 首先解释什么是布局: 来自百度词典的官方解释:◎ 布局 bùjú: [distribution;layout] 对事物的全面规划和安排,布:陈设:设置. 我对布局理解是“把**东西放在**位置显示”[动词]. ok,我们这节课就讲一下怎么样把 ExtJs 的组件,放到我们想放置的位置. 一.常用布局 (1)ContainerLayout:默认布局方式,其他布局继承该类进行扩展功能.显示:

无废话ExtJs 入门教程十五[员工信息表Demo:AddUser]

无废话ExtJs 入门教程十五[员工信息表Demo:AddUser] extjs技术交流,欢迎加群(201926085) 前面我们共介绍过10种表单组件,这些组件是我们在开发过程中最经常用到的,所以一定要用到非常熟练才可以,今天我们会通过一个员工信息表实例,再把这些组件串一下. (1)TextField  (2)Botton  (3)NumberField (4)Hidden (5)DataFiedl (6)RadioGroup (7)CheckBoxGroup (8)Combobox (9)F

无废话ExtJs 入门教程十三[上传图片:File]

无废话ExtJs 入门教程十三[上传图片:File] extjs技术交流,欢迎加群(201926085) 1.代码如下: 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/199

无废话ExtJs 入门教程十九[API的使用]

无废话ExtJs 入门教程十九[API的使用] extjs技术交流,欢迎加群(201926085) 首先解释什么是 API 来自百度百科的官方解释:API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节. ExtJs的Api必须部署到IIS上,ExtJS的API首页如下图所示: 左侧是搜索栏,可以搜索所有的Ext的组件,如上图

无废话ExtJs 入门教程二十一[继承:Extend]

无废话ExtJs 入门教程二十一[继承:Extend] extjs技术交流,欢迎加群(201926085) 在开发中,我们在使用视图组件时,经常要设置宽度,高度,标题等属性.而这些属性可以通过“继承”定义在我们定义的新组件中,从而达到重用的目地. 1.代码如下: 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-

ExtJs 入门教程

ExtJs 入门教程一[学习方法] ExtJs 入门教程二[Hello World] ExtJs 入门教程三[窗体:Window组件] ExtJs 入门教程四[表单:FormPanel] ExtJs 入门教程五[文本框:TextField] ExtJs 入门教程六[按钮:Button] ExtJs 入门教程七[登陆窗体Demo:Login] ExtJs 入门教程八[脚本调试Firefox:firebug] ExtJs 入门教程九[数字字段:NumberField.隐藏字段Hidden.日期字段:

DWR之入门实例(一)

DWR(Direct Web Remoting)是一个WEB远程调用框架.利用这个框架可以让AJAX开发变得很简单.利用DWR可以在客户端利用JavaScript直接调用服务端的Java方法并返回值给JavaScript就好像直接本地客户端调用一样(DWR根据Java类来动态生成JavaScrip代码).它的最新版本DWR0.6添加许多特性如:支持Dom Trees的自动配置,支持Spring(JavaScript远程调用spring bean),更好浏览器支持,还支持一个可选的commons-

React 入门实例教程

React 入门实例教程 作者: 阮一峰 日期: 2015年3月31日 现在最热门的前端框架,毫无疑问是 React . 上周,基于 React 的 React Native 发布,结果一天之内,就获得了 5000 颗星,受瞩目程度可见一斑. React 起源于 Facebook 的内部项目,因为该公司对市场上所有 JavaScript MVC 框架,都不满意,就决定自己写一套,用来架设 Instagram 的网站.做出来以后,发现这套东西很好用,就在2013年5月开源了. 由于 React 的

Java AIO 入门实例(转)

Java7 AIO入门实例,首先是服务端实现: 服务端代码 SimpleServer: Java代码   public class SimpleServer { public SimpleServer(int port) throws IOException { final AsynchronousServerSocketChannel listener = AsynchronousServerSocketChannel.open().bind(new InetSocketAddress(por