日期:2014-05-16  浏览次数:20362 次

easyui-datagrid 的 load 方法该怎么使用?
本帖最后由 q631263135 于 2013-04-08 17:33:54 编辑
看到很多例子都是如是写法:
$(selector).datagrid('load',url);这是什么意思啊?

如果像下面的方式写:
var grid = new easyui.datagrid(){...};
grid.load(url,param);

能这样写吗?文档中也没有标明这种写法,如果这样写又表示什么意思?

谢谢!.
easyui datagrid

------解决方案--------------------
不能用new, datagrid从拓展jQuery中拓展出来的方法,其直接逻辑如下:

$.fn.datagrid = function(options, param){
if (typeof options == 'string'){
var method = $.fn.datagrid.methods[options];
if (method){
return method(this, param);

}

options = options 
------解决方案--------------------
 {};
return this.each(function(){
var state = $.data(this, 'datagrid');
if (state){
$.extend(state.options, options);
} else {
$.data(this, 'datagrid', {
options: $.extend({}, $.fn.datagrid.defaults, $.fn.datagrid.parseOptions(this), options)
});
}
creatdatagrid(this);
});
};

这只是一部分代码,其它还有很多的方法、类的定义来配合datagrid完成其功能。
你最好到easyUI官网下一个拓展示例项目看一下,可以很全面的了解easyUI的实现原理
http://www.jeasyui.com/extension/etree.php, 这个页面最底下有个下载链接.
如果你不了解jQuery的一些基础知识,估计会看得很迷糊,建议你先上jQuery官网看了解一下$.extend, $.fn这些概念