前 言
第一部分 Ext Core
第 1 章 Ext Core 重要概念••••••••••••••••2
1.1 Ext.Element•••••••••••••••••••••••••••••••••••••••••2
1.1.1 獲取 HTMLElement 節點的 Ext.Element 實例•••••••••••••••••••••••••2
1.1.2 CSS 樣式操作•••••••••••••••••••••••••••••3
1.1.3 DOM 查詢與遍曆•••••••••••••••••••••••4
1.1.4 DOM 操作•••••••••••••••••••••••••••••••••••6
1.1.5 事件處理•••••••••••••••••••••••••••••••••••••9
1.1.6 尺寸大小•••••••••••••••••••••••••••••••••••13
1.1.7 定位功能•••••••••••••••••••••••••••••••••••14
1.1.8 動畫功能•••••••••••••••••••••••••••••••••••16
1.1.9 雜項•••••••••••••••••••••••••••••••••••••••••••19
1.2 Ext Core 的 Ajax 功能••••••••••••••••••••••19
1.3 DomQuery 詳解••••••••••••••••••••••••••••••••20
1.4 模闆介紹 ••••••••••••••••••••••••••••••••••••••••••23
1.5 實用功能 ••••••••••••••••••••••••••••••••••••••••••24
1.6 定時執行代碼 ••••••••••••••••••••••••••••••••••25
1.7 本章小結 ••••••••••••••••••••••••••••••••••••••••••26
第 2 章 Ext Core 實例係統 設計•••••••••••••••••••••••••••••••••••••••••••27
2.1 需求分析 ••••••••••••••••••••••••••••••••••••••••••27
2.2 係統設計•••••••••••••••••••••••••••••••••••••••••• 28
2.3 功能結構圖•••••••••••••••••••••••••••••••••••••• 29
2.4 開發與運行環境•••••••••••••••••••••••••••••• 31
2.5 數據庫設計•••••••••••••••••••••••••••••••••••••• 31
2.6 本章小結•••••••••••••••••••••••••••••••••••••••••• 34
第 3 章 Ext Core 實例— .NET 語言實現 ••••••••••••••••••••• 35
3.1 創建應用並設置開發環境 •••••••••••••• 35
3.2 自定義 Membership 提供程序 •••••••• 37
3.3 創建母版頁•••••••••••••••••••••••••••••••••••••• 38
3.4 首頁設計•••••••••••••••••••••••••••••••••••••••••• 42
3.5 産品列錶頁•••••••••••••••••••••••••••••••••••••• 47
3.6 産品詳細信息頁•••••••••••••••••••••••••••••• 51
3.7 登錄對話框•••••••••••••••••••••••••••••••••••••• 56
3.8 用戶注冊對話框•••••••••••••••••••••••••••••• 61
3.9 購物車對話框•••••••••••••••••••••••••••••••••• 65
3.10 結算•••••••••••••••••••••••••••••••••••••••••••••••• 70
3.11 為産品詳細頁添加評論••••••••••••••••• 77
3.12 本章小結•••••••••••••••••••••••••••••••••••••••• 84
第 4 章 Ext Core 實例— Java 語言實現 •••••••••••••••••••• 85
4.1 技術選型•••••••••••••••••••••••••••••••••••••••••• 85
4.2 搭建開發環境•••••••••••••••••••••••••••••••••• 85
4.3 設計頁麵布局 ••••••••••••••••••••••••••••••••••87
4.4 網上商店首頁 ••••••••••••••••••••••••••••••••••90
4.5 産品列錶頁麵 ••••••••••••••••••••••••••••••••••98
4.6 産品詳細信息頁麵•••••••••••••••••••••••••105
4.7 登錄對話框 ••••••••••••••••••••••••••••••••••••113
4.8 用戶注冊對話框•••••••••••••••••••••••••••••118
4.9 購物車對話框 ••••••••••••••••••••••••••••••••123
4.10 結算頁麵 ••••••••••••••••••••••••••••••••••••••126
4.11 為産品添加評論功能•••••••••••••••••••133
4.12 本章小結 ••••••••••••••••••••••••••••••••••••••139
第二部分 Store 和 Direct
第 5 章 在.NET 中使用 Ext.Direct ••••••••••••••••••••••••••••142
5.1 路由器包的內容•••••••••••••••••••••••••••••142
5.2 DIY 一個 Ext.Direct 實例 ••••••••••••••152
5.3 NewtonSoft.JSON•••••••••••••••••••••••••••155
5.3.1 JSON 的序列化和反序
列化••••••••••••••••••••••••••••••••••••••••••155
5.3.2 LINQ to JSON •••••••••••••••••••••••••158
5.3.3 JSON 文本的輸齣•••••••••••••••••••162
5.4 本章小結 ••••••••••••••••••••••••••••••••••••••••163
第 6 章 在 Java 中使用 Ext.Direct•••••••••••••••••••••••••••••164
6.1 在 Java 平颱上配置 Ext.Direct•••••••164
6.1.1 下載 directjngine••••••••••••••••••••••164
6.1.2 配置主控 servlet ••••••••••••••••••••••165
6.1.3 配置客戶端 •••••••••••••••••••••••••••••170
6.1.4 編寫 JavaScript 調用 遠程方法•••••••••••••••••••••••••••••••••172
6.2 為 Ext.Direct 自定義遠程方法•••••••••173
6.3 Ext.Direct 中的高級應用••••••••••••••• 178
6.3.1 批量請求和批量響應••••••••••••• 178
6.3.2 在 tree 中使用 Ext.Direct •••••••• 181
6.3.3 為 grid 設置 DirectStore•••••••••• 183
6.3.4 在 form 中使用 Ext.Direct 加載數據 ••••••••••••••••••••••••••••••••• 185
6.3.5 在 form 中使用 Ext.Direct 提交數據••••••••••••••••••••••••••••••••• 187
6.3.6 使用 polling 方式進行輪詢•••• 189
6.4 本章小結•••••••••••••••••••••••••••••••••••••••• 191
第 7 章 Store •••••••••••••••••••••••••••••••••••••• 192
7.1 Store 的結構••••••••••••••••••••••••••••••••••• 192
7.2 Ext.data.Field•••••••••••••••••••••••••••••••••• 197
7.3 Ext.data.Record•••••••••••••••••••••••••••••• 198
7.4 ArrayReader、JsonReader 和 XmlReader••••••••••••••••••••••••••••••••••••• 199
7.4.1 JsonReader •••••••••••••••••••••••••••••• 200
7.4.2 ArrayReader•••••••••••••••••••••••••••• 200
7.4.3 XmlReader •••••••••••••••••••••••••••••• 201
7.5 Store 的加載數據••••••••••••••••••••••••••• 201
7.6 Store 的數據操作••••••••••••••••••••••••••• 203
7.6.1 添加數據••••••••••••••••••••••••••••••••• 203
7.6.2 刪除數據••••••••••••••••••••••••••••••••• 203
7.6.3 搜索、定位和統計••••••••••••••••• 203
7.6.4 更新數據••••••••••••••••••••••••••••••••• 206
7.6.5 排序 •••••••••••••••••••••••••••••••••••••••• 207
7.7 DataProxy••••••••••••••••••••••••••••••••••••••• 208
7.8 DirectStore ••••••••••••••••••••••••••••••••••••• 209
7.9 DataWriter•••••••••••••••••••••••••••••••••••••• 212
7.10 Ext.data.Api•••••••••••••••••••••••••••••••••• 212
7.11 本章小結•••••••••••••••••••••••••••••••••••••• 213
第三部分 Ext-UI
第 8 章 Ext 用戶界麵控件••••••••••••••216
8.1 布局••••••••••••••••••••••••••••••••••••••••••••••••216
8.1.1 在 FormPanel 中使用 HBoxLayout 進行布局••••••••••••216
8.1.2 在 FormPanel 中使用 HBoxLayout 和 VBoxLayout 進行布局•••••••••••••••••••••••••••••••••219
8.1.3 Panel 的 body 的樣式範圍•••••••••••••••••••••••••••••••••••••••••224
8.2 Form 錶單組件•••••••••••••••••••••••••••••••226
8.2.1 DisplayField 控件••••••••••••••••••••226
8.2.2 在 FormPanel 中使用TabPanel ••••••••••••••••••••••••••••••••••229
8.2.3 DirectLoad 與 DirectSubmit ••••••••••••••••••••••••••••232
8.2.4 使用 DirectSubmit 上傳文件•••••••••••••••••••••••••••••••••••••••••235
8.3 Grid 組件••••••••••••••••••••••••••••••••••••••••238
8.3.1 一個結閤 DataWrite 和 RowEditor 的 Grid 示例••••••••••238
8.3.2 在 CRUD 操作中 restful 的 設置以及使用 Ext.Direct 的問題•••••••••••••••••••••••••••••••••••••••••247
8.4 ListView 控件•••••••••••••••••••••••••••••••••248
8.5 本章小結 ••••••••••••••••••••••••••••••••••••••••251
第四部分 Ext 擴展和 Ext 插件
第 9 章 Ext 擴展 •••••••••••••••••••••••••••••••254
9.1 利用 Ext.extend 實現繼承••••••••••••••254
9.2 與 Ext 擴展相關的預備知識••••••••• 256
9.2.1 定義命名空間••••••••••••••••••••••••• 256
9.2.2 重寫構造函數••••••••••••••••••••••••• 257
9.2.3 繼承組件的一些準備••••••••••••• 257
9.2.4 常用的輔助函數••••••••••••••••••••• 258
9.2.5 使用 xtype••••••••••••••••••••••••••••••• 258
9.3 實現一個功能完整的增、刪、查、改錶格控件 ••••••••••••••••••••••••••• 259
9.3.1 擴展 GridPanel •••••••••••••••••••••••• 259
9.3.2 配置列模型••••••••••••••••••••••••••••• 259
9.3.3 配置顯示數據••••••••••••••••••••••••• 260
9.3.4 點綴 EasyGrid••••••••••••••••••••••••• 261
9.3.5 實現添加一條記錄的功能••••••••• 262
9.3.6 實現修改一條記錄的功能••••••••• 264
9.3.7 實現刪除一條記錄的功能••••••••• 266
9.4 從頭實現 Ext 擴展•••••••••••••••••••••••• 270
9.5 本章小結•••••••••••••••••••••••••••••••••••••••• 274
第 10 章 Ext 插件 ••••••••••••••••••••••••••••• 275
10.1 插件的用法•••••••••••••••••••••••••••••••••• 275
10.2 標簽頁右鍵菜單TabCloseMenu••••••••••••••••••••••••••••• 276
10.3 麵闆最大化 MaximizeTool •••••••••• 278
10.4 分頁設置 PageSizePlugin •••••••••••• 282
10.5 行數據擴展 RowExpander••••••••••• 284
10.6 本章小結•••••••••••••••••••••••••••••••••••••• 290
第五部分 調試
第 11 章 調試•••••••••••••••••••••••••••••••••••••• 292
11.1 測試 Ext.Element 的功能••••••••••••• 292
11.1.1 獲取 Ext.Element 實例•••••••••• 292
11.1.2 測試 CSS 樣式操作 •••••••••••••• 294
11.1.3 測試 DOM 操作 ••••••••••••••••••••296
11.1.4 測試 DOM 查詢與遍曆•••••••••300
11.1.5 測試事件處理••••••••••••••••••••••••302
11.2 結閤 DataWrite 和 RowEditor
的 Grid 的調試過程••••••••••••••••••••••303
11.3 本章小結 ••••••••••••••••••••••••••••••••••••••306
第六部分 實例
第 12 章 單頁麵應用實例係統分析 •••••••••••••••••••••••••••308
12.1 係統分析 ••••••••••••••••••••••••••••••••••••••308
12.2 係統設計 ••••••••••••••••••••••••••••••••••••••308
12.2.1 單頁麵應用設計的難點••••••••308
12.2.2 開發與運行環境••••••••••••••••••••309
12.2.3 數據庫設計 •••••••••••••••••••••••••••309
12.3 各個模塊的詳細功能說明 •••••••••••311
12.3.1 登錄頁麵 •••••••••••••••••••••••••••••••311
12.3.2 主頁麵•••••••••••••••••••••••••••••••••••311
12.3.3 角色管理 •••••••••••••••••••••••••••••••311
12.3.4 用戶管理 •••••••••••••••••••••••••••••••312
12.3.5 進倉管理 •••••••••••••••••••••••••••••••312
12.3.6 齣倉管理 •••••••••••••••••••••••••••••••313
12.3.7 産品管理 •••••••••••••••••••••••••••••••313
12.3.8 庫存統計 •••••••••••••••••••••••••••••••314
12.3.9 修改密碼 •••••••••••••••••••••••••••••••314
12.4 本章小結 ••••••••••••••••••••••••••••••••••••••314
第 13 章 單頁麵應用實例—.NET 語言實現 •••••••••••••••••315
13.1 創建應用並設置開發環境 •••••••••••315
13.2 自定義 Membership 提供程序••••••••••••••••••••••••••••••••••••••••• 317
13.3 登錄頁•••••••••••••••••••••••••••••••••••••••••• 319
13.4 主頁麵•••••••••••••••••••••••••••••••••••••••••• 324
13.5 Ext.Direct 的 API 句柄 •••••••••••••••• 329
13.6 修改密碼對話框 •••••••••••••••••••••••••• 330
13.7 角色管理模塊•••••••••••••••••••••••••••••• 333
13.8 用戶管理•••••••••••••••••••••••••••••••••••••• 345
13.9 産品管理•••••••••••••••••••••••••••••••••••••• 356
13.10 進倉管理•••••••••••••••••••••••••••••••••••• 367
13.11 齣倉管理•••••••••••••••••••••••••••••••••••• 388
13.12 庫存統計•••••••••••••••••••••••••••••••••••• 403
13.13 退齣頁•••••••••••••••••••••••••••••••••••••••• 407
13.14 權限設置•••••••••••••••••••••••••••••••••••• 408
13.15 本章小結•••••••••••••••••••••••••••••••••••• 409
第 14 章 單頁麵應用實例——Java 語言實現•••••••••••••••• 410
14.1 技術選型•••••••••••••••••••••••••••••••••••••• 410
14.2 搭建開發環境•••••••••••••••••••••••••••••• 411
14.3 配置 Ext.Direct••••••••••••••••••••••••••••• 413
14.4 用戶登錄頁麵•••••••••••••••••••••••••••••• 417
14.5 係統主頁麵與動態菜單 •••••••••••••• 421
14.6 用戶管理模塊•••••••••••••••••••••••••••••• 427
14.7 角色管理模塊•••••••••••••••••••••••••••••• 439
14.8 産品管理模塊•••••••••••••••••••••••••••••• 447
14.9 進倉管理模塊•••••••••••••••••••••••••••••• 450
14.10 齣倉管理模塊•••••••••••••••••••••••••••• 460
14.11 庫存統計模塊•••••••••••••••••••••••••••• 474
14.12 用戶修改密碼窗口 •••••••••••••••••••• 479
14.13 用戶注銷•••••••••••••••••••••••••••••••••••• 482
14.14 本章小結•••••••••••••••••••••••••••••••••••• 483
· · · · · · (
收起)