对YUI扩展的Gird组件 Part-2


Posted in Javascript onMarch 10, 2007

原文在这里 文章日期: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
 Loading...

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};
//回调函数清除loading
this.dataModel.load('/blog/examples/amazon.php', params, this.clearIndicator);

表头能够对gird排序。现在进行新一番的搜索,例如输入John,数据加载后仍然按照你指定的方式排序。这是新的功能。

在一个实际项目中,我们需要一个能提供回调参数的,方便的异常处理机制。LoadableDataModel就就包含这种事件(onLoadException) 。

总的来说,一切进展顺利。有些Part1的反馈告诉,Gird在Safari和其它浏览器上能够工作^^。说真的,有些反馈真的不错! thanks!

Javascript 相关文章推荐
jQuery.getScript加载同域JS的代码
Feb 13 Javascript
javascript window.confirm确认 取消对话框实现代码小结
Oct 21 Javascript
jQuery提交多个表单的小例子
Jun 30 Javascript
js传中文参数controller里获取参数乱码问题解决方法
Jan 03 Javascript
点击标签切换和自动切换DIV选项卡
Aug 10 Javascript
jquery让指定的元素闪烁显示的方法
Mar 17 Javascript
JS访问SWF的函数用法实例
Jul 01 Javascript
jQuery+ajax实现文章点赞功能的方法
Dec 31 Javascript
再次谈论Javascript中的this
Jun 23 Javascript
JavaScript基础之this详解
Jun 04 Javascript
如何使用CSS3+JQuery实现悬浮墙式菜单
Jun 18 jQuery
这应该是最详细的响应式系统讲解了
Jul 22 Javascript
对YUI扩展的Gird组件 Part-1
Mar 10 #Javascript
学习YUI.Ext第七日-View&JSONView Part Two-一个画室网站的案例
Mar 10 #Javascript
学习YUI.Ext 第六天--关于树TreePanel(Part 2异步获取节点)
Mar 10 #Javascript
学习YUI.Ext 第七天--关于View&JSONView
Mar 10 #Javascript
学习YUI.Ext 第六天--关于树TreePanel(Part 1)
Mar 10 #Javascript
学习YUI.Ext第五日--做拖放Darg&Drop
Mar 10 #Javascript
学习YUI.Ext 第四天--对话框Dialog的使用
Mar 10 #Javascript
You might like
PHP与MySQL交互使用详解
2006/10/09 PHP
php 提速工具eAccelerator 配置参数详解
2010/05/16 PHP
PHP中copy on write写时复制机制介绍
2014/05/13 PHP
PHP 错误处理机制
2015/07/06 PHP
PHP按指定键值对二维数组进行排序的方法
2015/12/22 PHP
PHP中单例模式的使用场景与使用方法讲解
2019/03/18 PHP
在phpstudy集成环境下的nginx服务器下配置url重写
2019/12/02 PHP
Javascript 代码也可以变得优美的实现方法
2009/06/22 Javascript
jquery 双色表格实现代码
2009/12/08 Javascript
apycom出品的jQuery精美菜单破解方法
2011/02/18 Javascript
关于JavaScript中原型继承中的一点思考
2012/07/25 Javascript
JavaScript高级教程5.6之基本包装类型(详细)
2015/11/23 Javascript
微信公众号-获取用户信息(网页授权获取)实现步骤
2016/10/21 Javascript
JS实现获取来自百度,Google,soso,sogou关键词的方法
2016/12/21 Javascript
Javascript实现动态时钟效果
2018/11/17 Javascript
jQuery事件多次绑定与解绑问题实例分析
2019/02/19 jQuery
elementui之el-tebs浏览器卡死的问题和使用报错未注册问题
2019/07/06 Javascript
Vue实现push数组并删除的例子
2019/11/01 Javascript
js+canvas实现纸牌游戏
2020/03/16 Javascript
js实现有趣的倒计时效果
2021/01/19 Javascript
python通过imaplib模块读取gmail里邮件的方法
2015/05/08 Python
Python中用max()方法求最大值的介绍
2015/05/15 Python
利用标准库fractions模块让Python支持分数类型的方法详解
2017/08/11 Python
python截取两个单词之间的内容方法
2018/12/25 Python
python装饰器简介---这一篇也许就够了(推荐)
2019/04/01 Python
BASIC HOUSE官方旗舰店:韩国著名的服装品牌
2018/09/27 全球购物
德国珠宝和手表在线商店:VALMANO
2019/03/24 全球购物
吉尔德利巧克力公司:Ghirardelli Chocolate Company
2019/03/27 全球购物
美国隐形眼镜网上商店:Lens.com
2019/09/03 全球购物
迪卡侬中国官网:Decathlon中国
2020/08/10 全球购物
学院领导推荐信
2013/10/30 职场文书
汉语言文学毕业生自荐信范文
2014/03/24 职场文书
科学发展观活动总结
2014/08/28 职场文书
综治工作心得体会
2014/09/11 职场文书
2016年中秋节慰问信
2015/12/01 职场文书
Django+Celery实现定时任务的示例
2021/06/23 Python