?? grid.subgrid-min.js
字號(hào):
/**
* jqGrid extension for SubGrid Data
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
*/
;(function(b){b.fn.extend({addSubGrid:function(x,y,z,B){return this.each(function(){var a=this;if(!a.grid){return}var s,o,l,p,t,n;s=document.createElement("td");b(s,x).html("<img src='"+a.p.imgpath+"plus.gif'/>").addClass("sgcollapsed").click(function(c){if(b(this).hasClass("sgcollapsed")){p=b("table:first",a.grid.bDiv).attr("id");o=b(this).parent();var e=z==1?'<td></td>':'';l=b(o).attr("id");n=true;if(b.isFunction(a.p.subGridBeforeExpand)){n=a.p.subGridBeforeExpand(p+"_"+l,l)}if(n===false){return false}t=0;b.each(a.p.colModel,function(d,f){if(this.hidden===true){t++}});var h="<tr class='subgrid'>"+e+"<td><img src='"+a.p.imgpath+"line3.gif'/></td><td colspan='"+parseInt(a.p.colNames.length-1-t)+"'><div id="+p+"_"+l+" class='tablediv'>";b(this).parent().after(h+"</div></td></tr>");b(".tablediv",a).css("width",a.grid.width-20+"px");if(b.isFunction(a.p.subGridRowExpanded)){a.p.subGridRowExpanded(p+"_"+l,l)}else{A(o)}b(this).html("<img src='"+a.p.imgpath+"minus.gif'/>").removeClass("sgcollapsed").addClass("sgexpanded")}else if(b(this).hasClass("sgexpanded")){n=true;if(b.isFunction(a.p.subGridRowColapsed)){o=b(this).parent();l=b(o).attr("id");n=a.p.subGridRowColapsed(p+"_"+l,l)};if(n===false){return false}b(this).parent().next().remove(".subgrid");b(this).html("<img src='"+a.p.imgpath+"plus.gif'/>").removeClass("sgexpanded").addClass("sgcollapsed")}return false});y.appendChild(s);var A=function(f){var c,e,h;e=b(f).attr("id");h={id:e,nd_:(new Date().getTime())};if(!a.p.subGridModel[0]){return false}if(a.p.subGridModel[0].params){for(var g=0;g<a.p.subGridModel[0].params.length;g++){for(var k=0;k<a.p.colModel.length;k++){if(a.p.colModel[k].name==a.p.subGridModel[0].params[g]){h[a.p.colModel[k].name]=b("td:eq("+k+")",f).text().replace(/\ \;/ig,'')}}}}if(!a.grid.hDiv.loading){a.grid.hDiv.loading=true;b("div.loading",a.grid.hDiv).fadeIn("fast");if(!a.p.subgridtype)a.p.subgridtype=a.p.datatype;if(b.isFunction(a.p.subgridtype)){a.p.subgridtype(h)}switch(a.p.subgridtype){case"xml":b.ajax({type:a.p.mtype,url:a.p.subGridUrl,dataType:"xml",data:h,complete:function(d){v(d.responseXML,e)}});break;case"json":b.ajax({type:a.p.mtype,url:a.p.subGridUrl,dataType:"json",data:h,complete:function(d){w(eval("("+d.responseText+")"),e)}});break}}return false};var q=function(d,f,c){var e=document.createElement("div");e.className="celldiv";b(e).html(f);b(e).width(a.p.subGridModel[0].width[c]||80);d.appendChild(e)};var v=function(c,e){var h,g,k="",i,r,j,m=document.createElement("span");h=document.createElement("div");h.className="rowdiv";for(i=0;i<a.p.subGridModel[0].name.length;i++){g=document.createElement("div");g.className="celldivth";b(g).html(a.p.subGridModel[0].name[i]);b(g).width(a.p.subGridModel[0].width[i]);h.appendChild(g)}m.appendChild(h);if(c){j=a.p.xmlReader.subgrid;b(j.root+">"+j.row,c).each(function(){h=document.createElement("div");h.className="rowdiv";if(j.repeatitems===true){b(j.cell,this).each(function(d){q(h,this.textContent||this.text||' ',d)})}else{var f=a.p.subGridModel[0].mapping;if(f){for(i=0;i<f.length;i++){q(h,b(f[i],this).text()||' ',i)}}}m.appendChild(h)});var u=b("table:first",a.grid.bDiv).attr("id")+"_";b("#"+u+e).append(b(m).html());c=null;a.grid.hDiv.loading=false;b("div.loading",a.grid.hDiv).fadeOut("fast")}return false};var w=function(d,f){var c,e,h="",g,k,i,r=document.createElement("span");c=document.createElement("div");c.className="rowdiv";for(g=0;g<a.p.subGridModel[0].name.length;g++){e=document.createElement("div");e.className="celldivth";b(e).html(a.p.subGridModel[0].name[g]);b(e).width(a.p.subGridModel[0].width[g]);c.appendChild(e)}r.appendChild(c);if(d){i=a.p.jsonReader.subgrid;for(g=0;g<d[i.root].length;g++){k=d[i.root][g];c=document.createElement("div");c.className="rowdiv";if(i.repeatitems===true){if(i.cell){k=k[i.cell]}for(var j=0;j<k.length;j++){q(c,k[j]||' ',j)}}else{var m=a.p.subGridModel[0].mapping;if(m.length){for(var j=0;j<m.length;j++){q(c,k[m[j]]||' ',j)}}}r.appendChild(c)}var u=b("table:first",a.grid.bDiv).attr("id")+"_";b("#"+u+f).append(b(r).html());d=null;a.grid.hDiv.loading=false;b("div.loading",a.grid.hDiv).fadeOut("fast")}return false};a.subGridXml=function(d,f){v(d,f)};a.subGridJson=function(d,f){w(d,f)}})},expandSubGridRow:function(e){return this.each(function(){var d=this;if(!d.grid&&!e){return}if(d.p.subGrid===true){var f=b(this).getInd(d.rows,e,true);if(f){var c=b("td.sgcollapsed",f)[0];if(c){b(c).trigger("click")}}}})},collapseSubGridRow:function(e){return this.each(function(){var d=this;if(!d.grid&&!e){return}if(d.p.subGrid===true){var f=b(this).getInd(d.rows,e,true);if(f){var c=b("td.sgexpanded",f)[0];if(c){b(c).trigger("click")}}}})},toggleSubGridRow:function(e){return this.each(function(){var d=this;if(!d.grid&&!e){return}if(d.p.subGrid===true){var f=b(this).getInd(d.rows,e,true);if(f){var c=b("td.sgcollapsed",f)[0];if(c){b(c).trigger("click")}else{c=b("td.sgexpanded",f)[0];if(c){b(c).trigger("click")}}}}})}})})(jQuery);
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -