出版時間:2009.2 出版社:人民郵電出版社圖靈公司 作者:徐會生,何啟偉,康愛媛 頁數(shù):385
Tag標簽:無
前言
Ext JS通常簡稱為EXT,它是一個非常優(yōu)秀的Ajax框架,用JavaScript編寫,與后臺技術無關,可以用來開發(fā)具有炫麗外觀的富客戶端應用。EXT所開發(fā)的多彩界面吸引了許多程序員的眼球,同時也吸引了眾多客戶,它似乎一夜之間就迅速流行開來。對于企業(yè)應用系統(tǒng),尤其是MIS類型的系統(tǒng)而言,EXT非常適用。 當我們第一次使用EXT時,就被它深深地吸引住了。對于我們這樣沒有美術功底的程序員來說,EXT為我們解決了一大難題,因為它天生擁有炫麗的外表。同時,有很多用其他技術無法實現(xiàn)或極難實現(xiàn)的功能,卻能甩EXT輕易實現(xiàn),比如EXT中的表格、樹形、布局等控件能為我們的日常開發(fā)工作節(jié)約大量的時間和精力,這些都堅定了我們使用EXT的決心?! ∥覀冊趯W習EXT的過程中做了大量筆記,記下了學習過程中的一些心得和體會,同時也寫了很多示例程序,但是從未想過會將這些資料付諸出版。EXT的參考資料很缺乏,我們發(fā)現(xiàn)身邊很多學習EXT的朋友都在黑暗中摸索,尤其是英文不太好的朋友,學習起來非常吃力。EXT的中文資料就更少了,雖然有人把EXT官方的API文檔中文化了,但是API文檔中只有一些基礎理論和簡單示例,并不能指導我們快速地去實踐。我們是實用主義者,本書的最大特點就是以實例為基礎,在實例的基礎上講解EXT的各種用法。這樣既便于讀者理解,也方便讓讀者親自實踐,從而迅速地將所學到的知識運用到實際項目中去。 本書適合有一定CSS和HTML基礎的開發(fā)者閱讀,它的主要目的是讓開發(fā)者能快速學會EXT,并立即付諸實踐。本書中的示例代碼都是以EXT 2.2為基礎的,也包含了即將發(fā)布的EXT3.0中的新特性,對EXT的相關知識進行了深入而全面的闡述。
內容概要
Ext JS是一種用JavaScript編寫的功能強大的Ajax框架,可用于開發(fā)絢麗多彩的富客戶端Ajax應用。本書是Ext JS領域內的經(jīng)典著作,由淺入深、循序漸進地對Ext JS各方面的知識進行了全面而系統(tǒng)的闡述。全書由一個可以引領讀者快速入門的“Hello World”示例開篇,緊接著對Ext JS的事件、核心組件、表格和表單等各種控件、樹形結構、拖放、彈出窗口、布局、數(shù)據(jù)存儲和傳輸、實用工具和擴展等進行了詳細講解,最后以一個完整的EXT應用結束全書。每個知識點都配有相應的示例,可操作性極強?! ”緯m合所有Web開發(fā)者閱讀。
作者簡介
徐會生,高級軟件工程師兼系統(tǒng)架構師,資深Java EE開發(fā)專家。他是國內探索Ext Js的先驅之一,精通UI開發(fā),業(yè)余時間為Family168撰寫了大量開源方面的教程。何啟偉擁有10余年Java EE開發(fā)經(jīng)驗,為銀行、醫(yī)療、煙草等各大行業(yè)成功開發(fā)了大量企業(yè)級應用。他用Ext JS和J2EE開發(fā)了一個強大的企業(yè)級應用框架——Ext Framework,在國內處于一流水平。同時,他還獨立開發(fā)了大量EXT擴展組件,深受廣大開發(fā)者歡迎??祼坻聫氖陆鹑谛袠I(yè)軟件開發(fā)多年,目前是北京一家大型IT公司的項目負責人,利用Java EE和Ext Js為眾多行業(yè)開發(fā)過企業(yè)級的系統(tǒng)框架。
書籍目錄
第1章 EXT概述1.1 下載EXT發(fā)布包1.2 如何查看EXT自帶的API和示例1.3 為什么有些示例必須放在服務器上才能看到效果1.4 Hello World1.4.1 直接使用下載的發(fā)布包1.4.2 在項目中使用EXT1.5 為什么頁面提示“找不到圖片”1.6 輔助開發(fā)1.6.1 調試工具Firebug1.6.2 開發(fā)利器Spket1.7 本章小結第2章 EXT框架基礎2.1 EXT的事件和類2.1.1 自定義事件2.1.2 瀏覽器事件2.1.3 Ext.lib.Event2.1.4 Ext.util.Observable2.1.5 Ext.EventManager2.1.6 Ext.EventObject2.2 EXT的核心組件2.2.1 Ext.Component2.2.2 Ext.BoxComponent2.2.3 Ext.Container2.2.4 Ext.Panel2.2.5 Ext.TabPanel2.3 本章小結第3章 表格控件3.1 Grid的特性簡介3.2 制作一個簡單的Grid3.3 Grid常用功能詳解3.3.1 部分屬性功能3.3.2 自主決定每列的寬度3.3.3 讓Grid支持按列排序3.3.4 解決中文排序3.3.5 顯示日期類型數(shù)據(jù)3.4 在單元格里顯示紅色的字、圖片和按鈕3.5 給Grid的行和列設置顏色3.6 自動顯示行號和復選框3.6.1 自動顯示行號3.6.2 復選框3.7 選擇模型3.8 表格視圖——Ext.grid.GridView3.9 表格分頁3.9.1 為Grid添加分頁工具條3.9.2 通過后臺腳本獲得分頁數(shù)據(jù)3.9.3 分頁工具欄顯示在Grid的頂部3.9.4 讓EXT支持前臺排序3.10 后臺排序3.11 可編輯表格控件——EditorGrid3.11.1 制作一個簡單的EditorGrid3.11.2 添加一行數(shù)據(jù)3.11.3 保存修改結果3.11.4 驗證EditGrid中的數(shù)據(jù)3.11.5 限制輸入數(shù)據(jù)的類型3.12 屬性表格控件——PropertyGrid3.12.1 PropertyGrid3.12.2 只能看不能動的PropertyGrid3.12.3 強制對name列排序3.12.4 根據(jù)name獲得value3.12.5 自定義編輯器3.13 分組表格控件——Group3.13.1 分組表格簡介3.13.2 分組表格視圖Ext.grid.GroupingView3.14 可拖放的表格3.14.1 拖放改變表格的大小3.14.2 在同一個表格里拖放3.14.3 表格之間的拖放3.14.4 表格與樹之間的拖放3.15 Grid與右鍵菜單3.16 本章小結第4章 表單與輸入控件4.1 制作一個表單4.2 FormPanel和BasicForm詳解4.3 EXT支持的控件4.3.1 控件繼承圖4.3.2 表單控件4.3.3 基本輸入控件Ext.form.Field4.3.4 文本輸入控件Ext.form.TextField4.3.5 多行文本輸入控件Ext.form.TextArea4.3.6 日期輸入控件Ext.form.DateField4.3.7 時間輸入控件Ext.form.TimeField4.3.8 在線編輯器Ext.form.HtmlEditor4.3.9 隱藏域Ext.form.Hidden4.3.10 下拉輸入框Ext.form.TriggerField4.4 使用表單提交數(shù)據(jù)4.4.1 EXT默認的提交形式4.4.2 使用HTML原始的提交形式4.4.3 單純Ajax4.5 數(shù)據(jù)校驗4.5.1 輸入不能為空4.5.2 最大長度和最小長度4.5.3 借助vtype4.5.4 自定義校驗規(guī)則4.5.5 算不上校驗的NumberField4.5.6 使用后臺返回的校驗信息4.6 表單布局4.6.1 默認的平鋪布局4.6.2 平行分列布局4.6.3 在布局中使用fieldset4.6.4 在fieldset中使用布局4.6.5 自定義布局:在表單中加入圖片4.7 ComboBox、datefield和timefield詳解4.7.1 ComboBox簡介4.7.2 將Select轉換成ComboBox4.7.3 ComboBox結構詳解4.7.4 使用遠程數(shù)據(jù)4.7.5 ComboBox的高級配置4.7.6 監(jiān)聽用戶選擇了哪條數(shù)據(jù)4.7.7 使用本地數(shù)據(jù)實現(xiàn)省、市、縣級聯(lián)4.7.8 使用后臺數(shù)據(jù)實現(xiàn)省、市、縣級聯(lián)4.8 復選框和單選框4.8.1 復選框4.8.2 單選框Radio4.9 文件上傳4.10 自動把數(shù)據(jù)填充到表單中4.11 本章小結第5章 樹形結構5.1 TreePanel的基本使用5.1.1 創(chuàng)建一棵樹5.1.2 為樹生枝展葉5.1.3 tree的配置5.1.4 使用TreeLoader獲得數(shù)據(jù)5.1.5 讀取本地JSON數(shù)據(jù)5.1.6 Struts 2的JsonPlugin5.1.7 使用JSP提供后臺數(shù)據(jù)5.2 樹的事件5.3 右鍵菜單5.4 修改節(jié)點的默認圖標5.5 從節(jié)點彈出對話框5.6 節(jié)點提示信息5.7 為節(jié)點設置超鏈接5.8 直接修改樹節(jié)點名稱5.9 樹形的拖放5.9.1 節(jié)點拖放的三種形式5.9.2 葉子不能append5.9.3 判斷拖放的目標5.9.4 樹之間的拖放5.10 樹形過濾器TreeFilter5.11 利用TreeSorter對樹進行排序5.12 樹形節(jié)點視圖——Ext.tree.TreeNodeUI5.13 表格與樹形的結合——Ext.tree.ColumnTree5.14 本章小結第6章 拖放6.1 拖放簡介6.2 拖放的簡單應用6.3 拖放組件體系6.4 拖放的事件6.5 高級拖放6.5.1 Basic6.5.2 Handle6.5.3 On Top6.5.4 Proxy6.5.5 Group6.5.6 Grid6.5.7 Circle6.5.8 Region6.6 本章小結第7章 彈出窗口7.1 Ext.MessageBox7.1.1 Ext.MessageBox.alert()7.1.2 Ext.MessageBox.confirm()7.1.3 Ext.MessageBox.prompt()7.2 對話框的更多配置7.2.1 可以輸入多行的輸入框7.2.2 自定義對話框的按鈕7.2.3 進度條7.2.4 動畫效果7.3 Ext.window的常用屬性7.3.1 創(chuàng)建一個窗口7.3.2 窗口的最大化和最小化7.3.3 窗口的隱藏與銷毀7.3.4 防止窗口超出瀏覽器7.3.5 設置窗口中的按鈕7.3.6 窗口的其他配置選項7.4 窗口分組7.5 向窗口中放入各種控件7.5.1 在窗口中加入表格7.5.2 在窗口中加入表單7.5.3 復雜布局7.6 本章小結第8章 布局8.1 布局的用途8.2 最簡單的布局FitLayout8.3 常用的邊框布局BorderLayout8.3.1 設置子區(qū)域的大小8.3.2 使用split并限制它的范圍8.3.3 子區(qū)域的展開和折疊8.4 制作伸縮菜單的布局——Accordion8.5 實現(xiàn)操作向導的布局——CardLayout8.6 控制位置和大小的布局——AnchorLayout和AbsoluteLayout8.7 表單專用的布局FormLayout8.8 分列式的布局ColumnLayout8.9 表格狀的布局TableLayout8.10 與布局相關的其他知識8.10.1 超類Ext.Container的公共配置與xtype的概念8.10.2 layout的超類Ext.layout.ContainerLayout8.10.3 不指定任何布局時會發(fā)生的情況8.10.4 使用Viewport對整個頁面進行布局8.10.5 使用嵌套實現(xiàn)復雜布局8.11 本章小結第9章 工具欄和菜單9.1 簡單菜單9.2 向菜單中添加分隔線9.3 多級菜單9.4 高級菜單9.4.1 多選菜單和單選菜單9.4.2 日期菜單9.4.3 顏色菜單9.4.4 Ext.menu.Adapter菜單適配器9.4.5 使用Ext.menu.MenuMgr統(tǒng)一管理菜單9.5 工具欄組件詳解9.5.1 Ext.Toolbar.Button9.5.2 Ext.Toolbar.TextMenu9.5.3 Ext.Toolbar.Spacer9.5.4 Ext.Toolbar.Separator9.5.5 Ext.Toolbar.Fill9.5.6 Ext.Toolbar.SplitButton9.5.7 為工具條添加HTML標簽9.5.8 為工具條添加輸入控件9.6 分頁工具條Ext.PagingToolbar9.6.1 Ext.PagingToolbar的基本用法9.6.2 向Ext.PagingToolbar添加按鈕組件9.7 右鍵彈出菜單9.8 本章小結第10章 數(shù)據(jù)存儲與傳輸10.1 Ext.data簡介10.2 Ext.data.Connection10.3 Ext.data.Record10.4 Ext.data.Store10.4.1 基本應用10.4.2 對數(shù)據(jù)進行排序10.4.3 從store中獲取數(shù)據(jù)10.4.4 更新store中的數(shù)據(jù)10.4.5 加載及顯示數(shù)據(jù)10.4.6 其他功能10.5 常用proxy10.5.1 MemoryProxy10.5.2 HttpProxy10.5.3 ScriptTagProxy10.6 常用Reader10.6.1 ArrayReader10.6.2 JsonReader10.6.3 XmlReader10.7 高級store10.8 EXT中的Ajax10.8.1 最容易看到的Ext.Ajax10.8.2 Ext.lib.Ajax是更底層的封裝10.9 關于scope和createDelegate()10.10 DWR與EXT整合10.10.1 在EXT中直接使用DWR10.10.2 DWRProxy10.10.3 DWRTreeLoader10.10.4 DWRProxy和ComboBox10.11 localXHR支持本地使用Ajax10.12 本章小結第11章 實用工具11.1 EXT提供的常用函數(shù)11.1.1 onReady函數(shù)11.1.2 get函數(shù)11.1.3 query函數(shù)和select函數(shù)11.1.4 encode函數(shù)和decode函數(shù)11.1.5 extend函數(shù)11.1.6 apply函數(shù)和applyIf函數(shù)11.1.7 namespace函數(shù)11.1.8 Ext.isEmpty函數(shù)11.1.9 Ext.each函數(shù)11.1.10 Ext.DomQuery11.2 用DomHelper和Template動態(tài)生成HTML11.2.1 用DomHelper生成小片段11.2.2 Ext.DomHelper.applyStyles函數(shù)11.2.3 Template模板11.2.4 Ext.DomHelper.createTemplate函數(shù)11.2.5 復雜模板XTemplate11.3 用Ext.Utils.CSS切換主題11.4 懸停提示11.4.1 初始化11.4.2 注冊提示11.4.3 標簽提示11.4.4 全局配置11.4.5 個體配置11.5 使用Ext.state保存狀態(tài)11.6 fx實現(xiàn)的動畫效果11.7 局部更新網(wǎng)頁內容11.8 Ext.util.Format11.9 使用Ext.util.CSS管理CSS樣式11.10 使用Ext.util.ClickRepeater處理點擊事件11.11 使用Ext.util.DelayedTask延時執(zhí)行函數(shù)11.12 使用Ext.util.TaskRunner執(zhí)行循環(huán)任務11.13 混合型集合Ext.util.MixedCollection11.14 使用Ext.util.TextMetrices獲得文本所占的高度和寬度11.15 Ext.KeyNav處理導航按鍵11.16 Ext.KeyMap為對象綁定按鍵功能11.17 擴展11.17.1 擴展Date11.17.2 擴展String11.17.3 擴展Function11.17.4 擴展Number11.17.5 擴展Array11.18 Ext.ux.Portal11.19 Ext.Desktop11.20 本章小結第12章 一個完整的EXT應用12.1 確定整體布局12.2 使用HTML和CSS設置靜態(tài)信息12.3 對學生信息進行數(shù)據(jù)建模12.4 在頁面中顯示學生信息列表12.5 添加表單編輯學生信息12.6 為表單添加提交事件12.7 清空表單信息12.8 刪除指定的學生信息12.9 在Grid和Form之間進行數(shù)據(jù)交互12.10 本章小結第13章 通過Ext Framework合理地應用EXT13.1 Ext Framework簡介13.2 Ext Framework架構解析13.2.1 主要的第三方包13.2.2 后臺類關系圖13.2.3 前臺組件關系圖13.3 本章小結附錄A EXT常見問題附錄B EXT對AIR的支持附錄C EXT的版本變遷
章節(jié)摘錄
1.6輔助開發(fā) 在軟件開發(fā)中,經(jīng)常會使用輔助開發(fā)工具,因為輔助工具能提高開發(fā)效率,甚至可以達到事半功倍的效果。尤其是像JavaScrilpt這樣的解釋型腳本語言,開發(fā)和調試過程都非常困難,需要強有力的工具加以支持。下面將介紹在ExT開發(fā)中用得最多的調試工具和IDE?! ?.6.1調試工具Firebug 由于我們對Firefox的偏愛,以及Firebug在調試JavaScript過程中的便利,推薦你使用Firefox和IFirebug的組合。而且,EXT。開發(fā)者也都傾向于使用Firefox進行開發(fā),因為有些應用在Firefox上運行良好,在1Et扣運行卻會出問題。但是,目前IE占據(jù)70%的瀏覽器市場份額,所以我們還是需要讓自己的項目能在IE中正常運行,這要求我們能編寫出跨瀏覽器的Ja,vaScript。 Firebug的好處在于,它可以顯示動態(tài)生成的DOM,甚至可以在Firebug里直接對DOM進行修改,而這些修改會反映到顯示上?! ⊥ㄟ^Firebug提供的Console,可以直接執(zhí)行JavaScript腳本,也可以配置console.debug、console.inf.o和consoIe,error等日志方法,以便于跟蹤?! irebug可以查看Ajax發(fā)送和接收的各種信息,還可以查看發(fā)送的參數(shù)以及返回的狀態(tài)和信息。下面將介紹Firebug的安裝和使用?! ∈紫认螺dFirebug,如果你使用的是Firefox 3.0以上的版本,就必須下載Firebug 1.2以上的版本,否則會不兼容。下載后使用Firefox打開Firebug的xpi安裝文件,如圖1-4所示。也可以直接將安裝文件拖到Firefox上,然后重啟Firefox,F(xiàn)irebug便安裝成功了。
媒體關注與評論
“本書是非常急缺的全面講解Ext JS的圖書,彌補了Ajax社區(qū)的一大空白?!薄 狝jax中國,國內權威的Ajax專業(yè)門戶 “要想全面了解和掌握Ext Js。強烈推薦閱讀《深入淺出Ext Js》。從各方面來看,這本書都非常優(yōu)秀” ——Dojo中國,著名開源技術杜區(qū) “Ext JS是最絢麗的Ajax框架,開源人網(wǎng)站開發(fā)了大量基于Ext JS的應用,本書將是2009年最值得期待的Ajax技術圖書之一。相信它一定會受到開源技術愛好者的歡迎,也一定可以為所有愛好Ext JS的開發(fā)者帶來價值。” ——開源人,專注于為開源人士服務的互動平臺 “本書樣章發(fā)布后好評如潮,經(jīng)仔細研讀,果然名副其實。內容翔實,示例豐富,敘述風趣幽默,可操作性極強……Ext JS開發(fā)者必備!” ——一起Ext,著名Ext中文討論社區(qū)
編輯推薦
以用戶為中心的時代,應用的界面外觀正在變得越來越重要。然而,很多程序員都缺乏美術功底,要開發(fā)出界面美觀的應用實屬不易。Ext JS的出現(xiàn),為廣大程序員們解決了這一難題。它有豐富多彩的界面和強大的功能,是開發(fā)具有炫麗外觀的RIA應用的最佳選擇?! 渡钊霚\出Ext JS》是國內Ext JS先驅者的智慧結晶。內容翔實、示例豐富,包含大量示例代碼,可操作性極強。它不僅全面地闡述了Ext JS的基礎知識,而且深入淺出地講解了Ext JS開發(fā)中的高級技巧,同時還給出了大量專家級的建議。通過學習《深入淺出Ext JS》,讀者將感受到Ext JS的無窮魅力和Ajax技術帶來的完美體驗?! 渡钊霚\出Ext JS》適合有一定CSS和HTML基礎的開發(fā)者閱讀。徐會生高級軟件工程師兼系統(tǒng)架構師,資深Java EE開發(fā)專家。他是國內探索Ext Js的先驅之一,精通UI開發(fā)。業(yè)余時間為Family168撰寫了大量開源方面的教程。何啟偉擁有10余年Java EE開發(fā)經(jīng)驗,為銀行、醫(yī)療、煙草等各大行業(yè)成功開發(fā)了大量企業(yè)級應用。他用Ext JS和J2EE開發(fā)了一個強大的企業(yè)級應用框架——Ext Framework,在國內處于一流水平。同時,他還獨立開發(fā)了大量EXT擴展組件,深受廣大開發(fā)者歡迎??祼坻聫氖陆鹑谛袠I(yè)軟件開發(fā)多年,目前是北京一家大型lT公司的項目負責人,利用,Java EE和Ext Js為眾多行業(yè)開發(fā)過企業(yè)級的系統(tǒng)框架?! 『wExt JS 3.0新特性,Ext JS專家力作,示例豐富,完美結合理論和實踐,Ajax中國、Dojo中國、開源人、一起ExT 4大網(wǎng)站聯(lián)袂推薦。
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載