|
原文在這里 文章日期:2006-9-2
代碼在這里
Sidney SheldonMaster of the GameWarner BooksBookSidney SheldonAre You Afraid of the Dark?Warner BooksBookSidney SheldonIf Tomorrow ComesWarner BooksBookSidney SheldonTell Me Your DreamsWarner VisionBookSidney SheldonBloodlineWarner BooksBookSidney SheldonThe Other Side of MeWarner BooksBookSidney SheldonA Stranger in the MirrorWarner BooksBookSidney SheldonThe Sky Is FallingWilliam Morrow & CompanyBookSidney SheldonNothing Lasts ForeverWarner BooksBookSidney SheldonThe Naked FaceWarner BooksBook
Author |
Title |
Manufacturer |
Product Group |
DataModel包含的類如下:
AbstractDataModel提供事件event infrastructure等義接口interface '-DefaultDataModel 定義了操控數據的API '-LoadableDataModel AJAX服務的基類 '-XMLDataModel 包含以上的功能和提供XML的數據調用看上去,這分得很詳細,詳細到好像過于復雜。但是在我看來,對于提升代碼的可再用和擴展性,建立一個結實的DataModel是尤其重要的部分。正是基于這種方法,DataModel便能為其它的組件可再用,而不需要太多的組件--盡管它是龐大的。
如果你打開Js文件觀察的話,將會發現只需幾行代碼便可設置XMLDataModel:
var schema = { tagName: 'Item', id: 'ASIN', fields: ['Author', 'Title', 'Manufacturer', 'ProductGroup']};this.dataModel = new YAHOO.ext.grid.XMLDataModel(schema);
實際加載的數據:
// 參數可以是url encoed或對象類型var params = {'author': author};//回調函數清除loadingthis.dataModel.load('/blog/examples/amazon.php', params, this.clearIndicator);
表頭能夠對gird排序。現在進行新一番的搜索,例如輸入John,數據加載后仍然按照你指定的方式排序。這是新的功能。
在一個實際項目中,我們需要一個能提供回調參數的,方便的異常處理機制。LoadableDataModel就就包含這種事件(onLoadException) 。
總的來說,一切進展順利。有些Part1的反饋告訴,Gird在Safari和其它瀏覽器上能夠工作^^。說真的,有些反饋真的不錯! thanks!
JavaScript技術:對YUI擴展的Gird組件 Part-2,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。