`

ExtJS入门——开始

 
阅读更多

认识ExtJS
extjs是使用javascript、css和html等技术实现的主要用于创建用户界面,且与后台技术无关的前端ajax框架。
extjs来源于yui,开发理念来源于传统的桌面软件开发。

1.下载extjs,解压,得到目录结构

  • builds:是extjs压缩后的代码,体积更小,加载更快
  • docs :extjs的文档
  • examples:官方示例
  • locale:多国语言的资源文件
  • overview:extjs的功能简述
  • pkgs:extjs各部分功能的打包文件
  • resource:extjs要用到的图片文件与样式文件。
  • src:未压缩过的代码目录
  • bootstrap.js:extjs库的引导文件
  • ext-all.js :必须引入的核心库
  • ext-all-debug.js:ext-all.js的调试版

 

2.也从hello world开始(extjs 4.0)

 

<HTML>
 <HEAD>
  <TITLE>HelloWorld</TITLE>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <link rel="stylesheet" type="text/css" href="./ext-4.0/resources/css/ext-all.css" />
  <script type="text/javascript" src="./ext-4.0/bootstrap.js"></script>
  <script type="text/javascript" src="./ext-4.0/locale/ext-lang-zh_CN.js"></script>
  <script type="text/javascript">
 Ext.onReady(function(){
  Ext.MessageBox.alert('HelloWorld', 'Hello World!Hello World!Hello World!Hello World!');
 });
  </script>
 </HEAD>
 <BODY></BODY>
</HTML>

 

3.实现工具栏和菜单栏

  <script type="text/javascript">
 Ext.onReady(function(){
        var toolbar = new Ext.toolbar.Toolbar({
            renderTo:'toolbar',
            width:300
        });
        
        var childrenMenu = new Ext.menu.Menu({
            ignoreParentClicks:true,
            items:[
                {text:'open one'},
                {text:'open two'}
            ]            
        });
        
        var fileMenu = new Ext.menu.Menu({
            shadow:'frame',
            allowOtherMenus:true,
            items:[
                new Ext.menu.Item({
                    text:'new'
                }),
                {text:'open',menu:childrenMenu},
                {text:'close'}
            ]
        });
        
        
        toolbar.add(
            {
                text:'新建',
                menu:fileMenu
            },
            {
                text:'打开'
            },
            {
                text:'保存'
            },
            '->',
            '<a href="#">link</a>',
            'text'
        );
        
 });
  </script>
 </HEAD>
 <BODY>
 <div id='toolbar'></div>
 </BODY>

 

4.最常用的表单
1)Ext.form.Basic基本表单 提供了字段管理、数据验证、表单提交、数据加载等功能
2)认识Ext.form.Panel表单面板 是表单项的容器,默认使用anchor布局
Ext.form.Panel与传统表单的提交方式、表单的验证和对表单组件的支持有不同:
(1)表单的提交方式 原始的方式是同步进行,panel使用异步方式
(2)对表单验证的支持 ExtJS支持javascript验证方式
(3)对表单组件的支持 panel支持ext封装后的高级组件
例子一:

  <script type="text/javascript">
	Ext.onReady(function(){
        Ext.QuickTips.init();
        var form = new Ext.form.Panel({
            title:'myForm',
            height:120,
            width:200,
            frame:true,
            renderTo:'form',
            defaults:{
                labelWidth:50,
                width:150,
                labelAlign:'left',
                allowBlank:false,
                blankText:'will not null',
                msgTarget:'qtip'
            },
            items:[{
                xtype:'textfield',
                fieldLabel:'name'
                },
                {
                xtype:'numberfield',
                fieldLabel:'age'
            }]
        });
	});
  </script>
 </HEAD>
 <BODY>
 <div id='form'></div>
 </BODY>

 

5.面板和布局类
1)Ext.panel.Panel 主要包括5部分:底部工具栏,顶部工具栏,面板头部,面板底部,面板体
对于面板最重要的功能和作用就是在其中显示各种不同来源的内容,extjs提供了4种不同的显示内容的方式,分别是:
1)使用autoLoad配置项为面板加载远程页面 就是远程加载html文件
2)使用contentEl配置项为面板加载本地资源 加载当前页面中的html代码
3)使用html配置项自定义面板内容 自己编写html代码
4)使用items配置项在面板中添加组件

2)标准布局类 主要包括如下11种:
auto(自动布局) checkboxgroup(复选框组布局) fit(自适应布局) column(列布局)
accordion(折叠布局)table(表格布局) card(卡片式布局) border(边框布局)
   anchor(锚点布局) box(盒布局) absolute(绝对位置布局)
(1)auto自动布局 默认采用,使用原始的HTML文档流来布局子元素。
(2)fit自适应布局 使唯一的子元素充满容器
(3)accordion折叠布局 只有一个子面板处于打开状态,其他的收缩起来
(4)card卡片式布局 多个子面板,只有一个处于打开状态,其他的需要调用事件才能显示出来
(5)anchor锚点布局 根据容器大小为其所包含的子面板进行定位。
(6)absolute绝对定位 可以根据面板的位置配合x/y坐标进行定位
(7)checkboxgroup复选框组布局 
(8)column列布局 多列风格的布局样式
(9)table表格布局 可以创建出复杂的表格布局
(10)border边框布局 将整个容器分为5个部分:东南西北中。
(11)box盒布局 
在ext中,所有的布局都是从ext.container开始的
3)使用viewport
viewport代表整个浏览器窗口的显示区域,将document.body作为渲染对象,它会根据浏览器窗口的大小自动调整自身的尺寸,每个页面中只允许出现一个viewport实例。

6.ext的事件和类
分为两种类型:自定义类型事件和浏览器事件
自定义事件:所有继承自Ext.util.Observable类的控件都可以支持事件,可以为这些对象定义一些事件,然后为这些事件配置监听器。当某个事件被触发时,ext会自动调用对应的监听器。
浏览器事件:传统意义上的鼠标单击、移动等事件。

分享到:
评论

相关推荐

    ajax extjs 入门ppt 我和ajax有个约会

    **Ajax与ExtJS入门PPT——我和Ajax有个约会** 在当今的Web开发中,Ajax(Asynchronous JavaScript and XML)已经成为一种不可或缺的技术,它允许网页在不刷新整个页面的情况下与服务器进行交互,极大地提升了用户...

    ExtJs新手入门实例

    本文将针对初学者,详细讲解ExtJs中的一个基础且实用的模块——Ext.MessageBox,这是ExtJs提供的一个用于显示消息对话框的组件。 1. **Ext.MessageBox.alert()** `Ext.MessageBox.alert()`方法用于显示一个简单的...

    基于extjs4.0.7的员工管理系统

    Extjs4开发笔记(一)——准备工作 http://www.mhzg.net/a/20116/20116281100279.html Extjs4开发笔记(二)——框架的搭建 http://www.mhzg.net/a/20116/201162913210280.html 目前仅实现这两步,我在参照原作者的...

    Extjs及教程,ext-2.3.0及教程

    现在,我们转向提供的学习资源——"ExtJS实用开发指南.pdf"。这本指南可能涵盖了以下内容: 1. **入门教程**:介绍如何设置开发环境,创建第一个ExtJS应用,以及基本的组件使用。 2. **组件详解**:详细讲解各个...

    深入浅出ExtJS(第2版).

    根据提供的标题、描述和标签,我们可以看出这是一本关于ExtJS技术的书籍——《深入浅出ExtJS(第2版)》。虽然给定的部分内容并没有提供具体的技术细节,但根据书名及其版本号,我们可以推测这本书是针对ExtJS框架...

    精通JS脚本之ExtJS框架.part2.rar

    第3章 开始使用ExtJS 3.1 ExtJS概述 3.1.1 ExtJS简介 3.1.2 ExtJS中的基本概念 3.1.3 ExtJS与常见JavaScript库的介绍与对比 3.2 创建第一个程序 3.2.1 下载ExtJS 3.2.2 部署到开发工具中 3.2.3 编写Hello...

    深入剖析ExtJS 2.2实现及应用连载(全集) DOC精排版!

    入门部分引导读者快速了解ExtJS的基础知识;核心部分深入探讨ExtJS的核心框架和架构;元素部分专注于DOM元素的操作和管理;组件部分则讲解ExtJS丰富的组件系统;最后的应用部分通过实际的网络办公系统实例,展示如何...

    精通JS脚本之ExtJS框架.part1.rar

    第3章 开始使用ExtJS 3.1 ExtJS概述 3.1.1 ExtJS简介 3.1.2 ExtJS中的基本概念 3.1.3 ExtJS与常见JavaScript库的介绍与对比 3.2 创建第一个程序 3.2.1 下载ExtJS 3.2.2 部署到开发工具中 3.2.3 编写Hello...

    Ext基础入门示例

    在这个"Ext基础入门示例"中,我们将探讨如何使用ExtJS中的核心组件——Panel,以及如何进行基本的入门操作,包括生成可编辑表格、数据统计图以及主题变换。 首先,让我们了解ExtJS中的Panel组件。Panel是ExtJS中最...

    Ajax入门实例(DWRDemo+Ext)

    **Ajax入门实例——DWRDemo与ExtJS** Ajax(Asynchronous JavaScript and XML)技术是一种用于创建快速、动态网页的方法,它允许网页在不重新加载整个页面的情况下与服务器交换数据并更新部分网页内容。本实例主要...

Global site tag (gtag.js) - Google Analytics