$.define(["jQuery", "util", "form", "code"], "dataGrid", function($, util, form, code) { var qf = ".dt-form", qt = ".dt-tpl", derr = {}, dajaxCfg = {}, build = function($e, options) { if($e.length && $e.length === 1) { var config = { e: derr, ajax: dajaxCfg }; var ele = config.ele = $($e[0]); config.f = form.build(ele.find(qf)); config.c = code.parseCode(ele.find(qt)[0]); config.uri = ele.attr("loadUri"); if(options) { // if(option.error) { // config.e = option.error; // } // if(option.ajax) { // config.ajax = option.ajax; // } // if(option.beforeFill) { // config.c.before(option.beforeFill); // } $.extend(config, options); } return { code:config.c, form:config.f, load: function() { config.f.doGet(config.uri, function(data) { config.c.val(data); }, config.e, config.ajax); }, error: function(eh) { config.e = eh; }, beforeFill: function(h) { config.c.before(h); }, ajaxConfig: function(cfg) { config.ajax = cfg; } } } }; $.fn.dg = function(option) { if(this.length && this.length === 1) { return build(this, option); } }; return { build: build }; });