- 积分
- 110
- 在线时间
- 132 小时
- 主题
- 24
- 注册时间
- 2013-6-9
- 帖子
- 68
- 最后登录
- 2024-10-29
实习版主
- 帖子
- 68
- 软币
- 2043
- 在线时间
- 132 小时
- 注册时间
- 2013-6-9
|
目录
第1章 EXT概述 1
1.1 EXT版本变迁 1
1.2 下载EXT发布包 2
1.3 如何查看EXT自带的API和示例 2
1.4 为什么有些示例必须放在服务器上才能看到效果 3
1.5 Hello World 3
1.5.1 直接使用下载的发布包 3
1.5.2 在项目中使用EXT 4
1.6 为什么页面提示“找不到图片” 5
1.7 辅助开发 5
1.7.1 调试工具Firebug 5
1.7.2 开发利器Spket 8
1.8 小结 12
第2章 EXT框架基础 13
2.1 EXT的事件和类 13
2.1.1 自定义事件 13
2.1.2 浏览器事件 15
2.1.3 Ext.lib.Event 15
2.1.4 Ext.util.Observable 16
2.1.5 Ext.EventManager 19
2.1.6 Ext.EventObject 21
2.2 EXT的核心组件 22
2.2.1 Ext.Component 22
2.2.2 Ext.BoxComponent 25
2.2.3 Ext.Container 25
2.2.4 Ext.Panel 26
2.2.5 Ext.TabPanel 26
2.3 小结 29
第3章 表格控件 30
3.1 表格的特性简介 30
3.2 制作一个简单的表格 31
3.3 表格常用功能详解 33
3.3.1 部分属性功能 34
3.3.2 自主决定每列的宽度 35
3.3.3 让表格支持按列排序 37
3.3.4 解决中文排序 38
3.3.5 显示日期类型数据 40
3.4 表格渲染 41
3.5 给表格的行和列设置颜色 45
3.6 自动显示行号和复选框 46
3.6.1 自动显示行号 46
3.6.2 复选框 48
3.7 选择模型 49
3.8 表格视图——Ext.grid.GridView 50
3.9 表格分页 52
3.9.1 为表格添加分页工具条 52
3.9.2 通过后台脚本获得分页数据 53
3.9.3 分页工具条显示在表格的顶部 57
3.9.4 让EXT支持前台分页 57
3.10 后台排序 58
3.11 可编辑表格控件——EditorGrid 60
3.11.1 制作一个简单的EditorGrid 60
3.11.2 添加一行数据 62
3.11.3 保存修改结果 65
3.11.4 验证EditGrid中的数据 68
3.11.5 限制输入数据的类型 72
3.12 属性表格控件——PropertyGrid 76
3.12.1 PropertyGrid 77
3.12.2 只能看不能动的PropertyGrid 78
3.12.3 强制对name列排序 78
3.12.4 根据name获得value 79
3.12.5 自定义编辑器 79
3.13 分组表格控件——Group 79
3.13.1 分组表格简介 80
3.13.2 分组表格视图Ext.grid.GroupingView 81
3.14 可拖放的表格 83
3.14.1 拖放改变表格的大小 83
3.14.2 在同一个表格里拖放 85
3.14.3 表格之间的拖放 87
3.14.4 表格与树之间的拖放 90
3.15 表格与右键菜单 91
3.16 小结 93
第4章 表单与输入控件 94
4.1 制作表单 94
4.2 FormPanel和BasicForm详解 95
4.3 EXT支持的控件 95
4.3.1 控件继承图 95
4.3.2 表单控件 96
4.3.3 基本输入控件Ext.form.Field 99
4.3.4 文本输入控件Ext.form.TextField 100
4.3.5 多行文本输入控件Ext.form.TextArea 101
4.3.6 日期输入控件Ext.form.DateField 101
4.3.7 时间输入控件Ext.form.TimeField 102
4.3.8 在线编辑器Ext.form.HtmlEditor 102
4.3.9 隐藏域Ext.form.Hidden 103
4.3.10 下拉输入框Ext.form.TriggerField 103
4.4 使用表单提交数据 105
4.4.1 EXT默认的提交形式 105
4.4.2 使用HTML原始的提交形式 107
4.4.3 单纯Ajax 107
4.5 数据校验 108
4.5.1 输入不能为空 108
4.5.2 最大长度和最小长度 109
4.5.3 借助vtype 109
4.5.4 自定义校验规则 110
4.5.5 算不上校验的NumberField 110
4.5.6 使用后台返回的校验信息 111
4.6 表单布局 112
4.6.1 默认的平铺布局 113
4.6.2 平行分列布局 113
4.6.3 在布局中使用fieldset 116
4.6.4 在fieldset中使用布局 118
4.6.5 自定义布局 119
4.7 ComboBox详解 121
4.7.1 ComboBox简介 122
4.7.2 将Select转换成ComboBox 123
4.7.3 ComboBox结构详解 123
4.7.4 ComboBox读取远程数据 125
4.7.5 ComboBox的高级配置 126
4.7.6 监听用户选择的数据 128
4.7.7 使用本地数据实现省、市、县级联 129
4.7.8 使用后台数据实现省、市、县级联 132
4.8 复选框和单选框 135
4.8.1 复选框 135
4.8.2 单选框 136
4.9 文件上传 137
4.10 自动把数据填充到表单中 138
4.11 小结 140
第5章 树形结构 141
5.1 TreePanel的基本使用 141
5.1.1 创建一棵树 141
5.1.2 为树生枝展叶 142
5.1.3 树形的配置 143
5.1.4 使用TreeLoader获得数据 144
5.1.5 读取本地JSON数据 145
5.1.6 与Struts 2进行集成 146
5.1.7 使用JSP提供后台数据 147
5.2 树的事件 150
5.3 右键菜单 151
5.4 修改节点的默认图标 153
5.5 从节点弹出对话框 153
5.6 节点提示信息 154
5.7 为节点设置超链接 155
5.8 直接修改树节点名称 156
5.9 树形的拖放 157
5.9.1 节点拖放的3种形式 158
5.9.2 叶子不能append 158
5.9.3 判断拖放的目标 159
5.9.4 树之间的拖放 161
5.10 树形过滤器TreeFilter 161
5.11 利用TreeSorter对树进行排序 164
5.12 树形节点视图——Ext.tree.TreeNodeUI 164
5.13 表格与树形的结合——Ext.ux.tree.ColumnTree 166
5.14 小结 168
第6章 拖放 169
6.1 拖放简介 169
6.2 拖放的简单应用 169
6.3 拖放组件体系 170
6.4 拖放的事件 172
6.5 高级拖放 174
6.5.1 基础 174
6.5.2 控制柄 174
6.5.3 总在最上面 175
6.5.4 代理 177
6.5.5 分组 178
6.5.6 网格 182
6.5.7 拖动圆形 183
6.5.8 拖动范围 185
6.6 小结 186
第7章 弹出窗口 187
7.1 Ext.MessageBox 187
7.1.1 Ext.MessageBox.alert() 187
7.1.2 Ext.MessageBox.confirm() 188
7.1.3 Ext.MessageBox.prompt() 188
7.2 对话框的更多配置 189
7.2.1 可以输入多行的输入框 189
7.2.2 自定义对话框的按钮 189
7.2.3 进度条 190
7.2.4 动画效果 191
7.3 Ext.window的常用属性 191
7.3.1 创建窗口 192
7.3.2 窗口的最大化和最小化 193
7.3.3 窗口的隐藏与销毁 194
7.3.4 防止窗口超出浏览器 195
7.3.5 设置窗口中的按钮 196
7.3.6 窗口的其他配置选项 197
7.4 窗口分组 198
7.5 向窗口中放入各种控件 200
7.5.1 在窗口中加入表格 200
7.5.2 在窗口中加入表单 201
7.5.3 复杂布局 202
7.6 小结 204
第8章 布局 205
8.1 布局的用途 205
8.2 最简单的布局——FitLayout 207
8.3 常用的边框布局——BorderLayout 209
8.3.1 设置子区域的大小 210
8.3.2 使用split并限制它的范围 212
8.3.3 子区域的展开和折叠 213
8.4 制作伸缩菜单的布局——Accordion 216
8.5 实现操作向导的布局——CardLayout 217
8.6 控制位置和大小的布局——AnchorLayout和AbsoluteLayout 219
8.7 表单专用的布局FormLayout 223
8.8 分列式的布局ColumnLayout 225
8.9 表格状的布局TableLayout 227
8.10 与布局相关的其他知识 228
8.10.1 超类Ext.Container的公共配置与xtype的概念 228
8.10.2 layout的超类Ext.layout. ContainerLayout 229
8.10.3 不指定任何布局时会发生的情况 230
8.10.4 使用Viewport对整个页面进行布局 231
8.10.5 使用嵌套实现复杂布局 232
8.11 BoxLayout 236
8.12 小结 237
第9章 工具条和菜单 238
9.1 简单菜单 238
9.2 向菜单中添加分隔线 239
9.3 多级菜单 240
9.4 高级菜单 242
9.4.1 多选菜单和单选菜单 242
9.4.2 日期菜单 244
9.4.3 颜色菜单 244
9.4.4 在菜单中添加其他组件 245
9.4.5 使用Ext.menu.MenuMgr统一管理菜单 246
9.5 工具条组件详解 248
9.5.1 Ext.Toolbar.Button 248
9.5.2 Ext.Toolbar.TextMenu 248
9.5.3 Ext.Toolbar.Spacer 249
9.5.4 Ext.Toolbar.Separator 250
9.5.5 Ext.Toolbar.Fill 250
9.5.6 Ext.SplitButton 251
9.5.7 为工具条添加HTML标签 252
9.5.8 为工具条添加输入控件 253
9.6 分页工具条Ext.PagingToolbar 253
9.6.1 Ext.PagingToolbar的基本用法 253
9.6.2 向Ext.PagingToolbar添加按钮组件 254
9.7 右键弹出菜单 255
9.8 小结 257
第10章 数据存储与传输 258
10.1 Ext.data命名空间下常用组件简介 258
10.2 Ext.data.Connection 258
10.3 Ext.data.Record 260
10.4 Ext.data.Store 261
10.4.1 基本应用 261
10.4.2 对数据进行排序 262
10.4.3 从store中获取数据 263
10.4.4 更新store中的数据 264
10.4.5 加载及显示数据 265
10.4.6 其他功能 266
10.5 常用proxy 268
10.5.1 MemoryProxy 268
10.5.2 HttpProxy 268
10.5.3 ScriptTagProxy 268
10.6 常用Reader 269
10.6.1 ArrayReader 269
10.6.2 JsonReader 270
10.6.3 XmlReader 271
10.7 高级store 273
10.8 EXT中的Ajax 274
10.8.1 最容易看到的Ext.Ajax 274
10.8.2 Ext.lib.Ajax是更底层的封装 275
10.9 关于scope和createDelegate() 276
10.10 DWR与EXT整合 277
10.10.1 在EXT中直接使用DWR 277
10.10.2 DWRProxy 279
10.10.3 DWRTreeLoader 280
10.10.4 DWRProxy和ComboBox 281
10.11 localXHR支持本地使用Ajax 282
10.12 小结 284
第11章 实用工具 285
11.1 EXT提供的常用函数 285
11.1.1 onReady函数 286
11.1.2 get函数 286
11.1.3 query函数和select函数 289
11.1.4 encode函数和decode函数 292
11.1.5 extend函数 294
11.1.6 apply函数和applyIf函数 295
11.1.7 namespace函数 295
11.1.8 Ext.isEmpty函数 296
11.1.9 Ext.each函数 297
……
第12章 一个完整的EXT应用 346
第13章 复杂实例 371
第14章 EXT 3.x中的新特性 388
第15章 用户扩展与插件 429
附录A EXT常见问题 447
附录B EXT对AIR的支持 454
附录C EXT的版本变迁 462
序言
再次拿起书稿,距离本书第一版的出版已是一年有余,很高兴看到EXT依然在不断向前发展,国内的EXT开发者也越来越多。这些事实都证明了RIA的活力和前景,无论是最终客户还是开发者都期待在B/S结构中获得更加灵活而又强大的功能。这一年中,我们接触、实践、改造也放弃了许多基于EXT的应用系统,这些经验让我们对EXT的原理和应用场景都有了更多的认识和感触。我们也希望将这些积累的经验与大家共享,共同提高。
这次改版的主要目的是将书中的内容从EXT2.x版本升级到EXT3.x,并对上一版中的内容进行增补。实际上,EXT2.x至3.x的版本升级并没有为我们带来阵痛,绝大部分EXT2.x中的功能依然可以在EXT3.x中使用,这对开发者来说是一个很好的消息,意味着系统升级会简单许多,我们只需要考虑是否为原有系统添加EXT3.x版本中新加入的特性就可以了,原有的功能依然可以正常使用。
这对我们也是一个好消息,在书的改版过程中,可以把精力更多集中在对新功能的介绍上。我们对这一版新增的内容充满了信心,无论是对EXT3.x中新增功能的介绍,还是在原有内容基础上进行的扩充都闪烁着耀眼的光芒。大家可以看到如何在EXT中使用漂亮的图表,可以尽情感叹EXT在性能方面实现的巨大突破,还有各种各样的绚丽组件,先不管它们好用不好用,只看到它们的显示效果就足够我们惊叹了。
不得不提的是,随着企业对EXT的应用规模逐渐变大,如何对原有功能进行扩展,如何编写自定义组件,如何使用插件等问题开始慢慢浮出水面。我们很高兴看到更多开发者加入到定制EXT组件的行列中,希望这一版中对用户扩展和插件的介绍及实例能够帮助大家一睹EXT定制组件的风采。
任何想学习EXT的开发者都可以通过这本书快速入门。书中包含的所有功能都配有实例,大部分实例都可以直接在本地使用浏览器打开。对于一些必须使用后台脚本支持的实例,我们也尽量使用最简单的后台脚本实现,避免初学者被复杂的配置和框架应用混淆了视听。
大多数实例都可以在本地直接运行,打开随书光盘中的ext-3.0.0/examples文件夹,可以看到书中每一章内容都对应了一个单独的文件夹(如第3章对应的文件夹为03.grid),打开对应的文件夹,双击其中的HTML文件就可以使用浏览器运行实例。
对于那些需要后台脚本支持的实例,需要先确保本机安装了JDK并正确配置了环境变量,然后进入随书光盘中的apache-tomcat-5.5.28目录下,执行bin目录下的startup.bat批处理文件,当服务器启动完成后即可使用浏览器访问实例了。
EXT与AIR的相关实例都放在随书光盘的air目录下,在运行这些实例之前要在本机安装AdobeAIRSDK,然后执行实例中的脚本即可运行实例。
光盘中除了书中所述功能的实例之外,我们还额外附加了一些工作流引擎(jBPM4.x)的演示视频。jBPM4是family168下一步的发展方向,我们在jBPM4.x之上开发的应用也都使用EXT来实现前台的布局与展现,希望为大家拓展视野。
最后,我们还要感谢人民邮电出版社图灵公司对我们的支持,因为有他们的支持和帮助,我们才能顺利完成本书的改版工作。
希望大家能够喜欢《深入浅出ExtJS》(第2版)。
|
评分
-
查看全部评分
|