git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605/site@110 97e9348a-65ac-dc4b-aefc-98561f571b83
1 line
1.7 KiB
JavaScript
1 line
1.7 KiB
JavaScript
(function(a){a.fn.extend({jqGridImport:function(b){b=a.extend({imptype:"xml",impstring:"",impurl:"",mtype:"GET",impData:{},xmlGrid:{config:"roots>grid",data:"roots>rows"},jsonGrid:{config:"grid",data:"data"}},b||{});return this.each(function(){var f=this;var d=function(h,m){var g=a(m.xmlGrid.config,h)[0];var l=a(m.xmlGrid.data,h)[0];if(xmlJsonClass.xml2json&&JSON.parse){var n=xmlJsonClass.xml2json(g," ");var n=JSON.parse(n);for(var i in n){var j=n[i]}if(l){var k=n.grid.datatype;n.grid.datatype="xmlstring";n.grid.datastr=h;a(f).jqGrid(j).setGridParam({datatype:k})}else{a(f).jqGrid(j)}n=null;j=null}else{alert("xml2json or json.parse are not present")}};var e=function(h,k){if(h&&typeof h=="string"&&JSON.parse){var g=JSON.parse(h);var l=g[k.jsonGrid.config];var i=g[k.jsonGrid.data];if(i){var j=l.datatype;l.datatype="jsonstring";l.datastr=i;a(f).jqGrid(l).setGridParam({datatype:j})}else{a(f).jqGrid(l)}}};switch(b.imptype){case"xml":a.ajax({url:b.impurl,type:b.mtype,data:b.impData,dataType:"xml",complete:function(g,h){if(h=="success"){d(g.responseXML,b);g=null}}});break;case"xmlstring":if(b.impstring&&typeof b.impstring=="string"){var c=xmlJsonClass.parseXml(b.impstring);if(c){d(c,b);c=null}}break;case"json":a.ajax({url:b.impurl,type:b.mtype,data:b.impData,dataType:"json",complete:function(g,h){if(h=="success"){e(g.responseText,b);g=null}}});break;case"jsonstring":if(b.impstring&&typeof b.impstring=="string"){e(b.impstring,b)}break}})},jqGridExport:function(c){c=a.extend({exptype:"xmlstring"},c||{});var b=null;this.each(function(){if(!this.grid){return}var d=a(this).getGridParam();switch(c.exptype){case"xmlstring":b=xmlJsonClass.json2xml(d," ");break;case"jsonstring":b=JSON.stringify(d);break}});return b}})})(jQuery); |