General.Web/wwwroot/lib/bootstrap.treetable/1.0/bootstrap-treetable.min.js
(完整代码) 12KB(function(n){"use strict";n.fn.bootstrapTreeTable=function(t,i){var r=n(this).data("bootstrap.tree.table");if(r=r?r:n(this),typeof t=="string")return n.fn.bootstrapTreeTable.methods[t](r,i);t=n.extend({},n.fn.bootstrapTreeTable.defaults,t||{});r.hasSelectItem=!1;r.data_list=null;r.data_obj=null;r.hiddenColumns=[];r.lastAjaxParams;r.isFixWidth=!1;var y=function(){p();w();b();k();o();h(!0);r.data("bootstrap.tree.table",r)},p=function(){var i=n("<div class='bootstrap-tree-table'><\/div>"),u=n("<div class='treetable-table'><\/div>");r.before(i);i.append(u);u.append(r);r.addClass("table");t.striped&&r.addClass("table-striped");t.bordered&&r.addClass("table-bordered");t.hover&&r.addClass("table-hover");t.condensed&&r.addClass("table-condensed");r.html("")},w=function(){var u=n("<div class='treetable-bars'><\/div>"),i,f,e,o;t.toolbar&&(n(t.toolbar).addClass("tool-left"),u.append(n(t.toolbar)));i=n('<div class="btn-group tool-right">');u.append(i);r.parent().before(u);t.showRefresh&&(f=n('<button class="btn btn-default btn-outline" type="button" aria-label="refresh" title="刷新"><i class="glyphicon glyphicon-repeat"><\/i><\/button>'),i.append(f),d(f));t.showColumns?(e=n('<div class="btn-group pull-right" title="列"><button type="button" aria-label="columns" class="btn btn-default btn-outline dropdown-toggle" data-toggle="dropdown" aria-expanded="false"><i class="glyphicon glyphicon-list"><\/i> <span class="caret"><\/span><\/button><\/div>'),o=n('<ul class="dropdown-menu columns" role="menu"><\/ul>'),n.each(t.columns,function(t,i){if(i.field!="selectItem"){var u=null;typeof i.visible=="undefined"||i.visible==!0?u=n('<li role="menuitem"><label><input type="checkbox" checked="checked" data-field="'+i.field+'" value="'+i.field+'" > '+i.title+"<\/label><\/li>"):(u=n('<li role="menuitem"><label><input type="checkbox" data-field="'+i.field+'" value="'+i.field+'" > '+i.title+"<\/label><\/li>"),r.hiddenColumns.push(i.field));o.append(u)}}),e.append(o),i.append(e),g()):n.each(t.columns,function(n,t){t.field!="selectItem"&&(typeof t.visible=="undefined"||t.visible==!0||r.hiddenColumns.push(t.field))})},e=function(){n.each(r.hiddenColumns,function(n,t){r.find("."+t+"_cls").hide()})},b=function(){var u=n("<tr><\/tr>"),i;n.each(t.columns,function(t,i){var f=null;t==0&&i.field=="selectItem"?(r.hasSelectItem=!0,f=n('<th style="width:36px;"><\/th>')):f=n('<th style="'+(i.width?"width:"+i.width:"")+'" class="'+i.field+'_cls"><\/th>');!r.isFixWidth&&i.width&&(r.isFixWidth=i.width.indexOf("px")>-1?!0:!1);f.text(i.title);u.append(f)});i=n('<thead class="treetable-thead"><\/thead>');i.append(u);r.append(i)},k=function(){var i=n('<tbody class="treetable-tbody"><\/tbody>');r.append(i);t.height&&i.css("height",t.height)},o=function(i){r.data_list={};r.data_obj={};var u=r.find("tbody"),f='<tr><td colspan="'+t.columns.length+'"><div style="display: block;text-align: center;">正在努力地加载数据中,请稍候……<\/div><\/td><\/tr>';u.html(f);t.url?n.ajax({type:t.method,url:t.url,data:i?i:t.ajaxParams,dataType:"JSON",success:function(n){var t=n;n.Result&&(t=n.Result);s(t)},error:function(n){var i='<tr><td colspan="'+t.columns.length+'"><div style="display: block;text-align: center;">'+n.responseText+"<\/div><\/td><\/tr>";u.html(i)}}):s(t.data)},s=function(i){var o=r.find("tbody"),l,s;if(o.html(""),!i||i.length<=0){l='<tr><td colspan="'+t.columns.length+'"><div style="display: block;text-align: center;">没有找到匹配的记录<\/div><\/td><\/tr>';o.html(l);return}c(i);s=r.data_list._root_;s&&n.each(s,function(n,t){var i="row_id_"+n;f(t,1,i,"row_root")});n.each(i,function(n,t){var f=r.getRootFlag(t),i;f&&(t.isShow||(i=u(t,!1,1,"",""),o.append(i)))});r.append(o);v();a();e();h()},h=function(i){var u;if(t.height>0){var e=r.find("thead"),f=r.find("tbody"),o=parseInt(r.css("border-left-width"))+parseInt(r.css("border-right-width"));e.css("width",f.children(":first").width());i&&(u=!1,n(window).resize(function(){u||(u=!0,setTimeout(function(){r.isFixWidth||f.css("width",r.parent().width()-o);e.css("width",f.children(":first").width());u=!1},300))}))}},c=function(i){r.data_list._root_||(r.data_list._root_=[]);var u=[],f=t.rootIdValue?t.rootIdValue:null;n.each(i,function(n,e){var s,o;e.isShow=!1;s=r.getRootFlag(e);!e[t.parentCode]||(f?e[t.parentCode]==t.rootIdValue:s)?r.data_obj["id_"+e[t.code]]||u.push({index:n,node:e}):(o=l(i,0,e),o&&o.node&&(r.data_obj["id_"+o.node[t.code]]||(r.data_obj["id_"+o.node[t.code]]=o.node,u.push(o))),r.data_list["_n_"+e[t.parentCode]]||(r.data_list["_n_"+e[t.parentCode]]=[]),r.data_obj["id_"+e[t.code]]||r.data_list["_n_"+e[t.parentCode]].push(e));r.data_obj["id_"+e[t.code]]||(r.data_obj["id_"+e[t.code]]=e)});u=u.sort(function(n,t){return n.index-t.index});n.each(u,function(n,t){r.data_list._root_.push(t.node)})},l=function(n,i,r){for(let u=0;u<n.length;u++){if(n[u][t.code]==r[t.parentCode])return l(n,u,n[u]);if(u==n.length-1)return{index:i,node:r}}},f=function(i,e,o,s){var c=r.find("tbody"),h=r.data_list["_n_"+i[t.code]],l=u(i,h?!0:!1,e,o,s);c.append(l);h&&(t.expandAll?n.each(h,function(n,t){var i=o+"_"+n;f(t,e+1,i,o)}):t.expandFirst&&e==1&&n.each(h,function(n,t){var i=o+"_"+n;f(t,e+1,i,o)}))},u=function(i,u,f,e,o,s){i.isShow=!0;i.row_id=e;i.p_id=o;i.lv=f;var h=n('<tr id="'+e+'" pid="'+o+'"><\/tr>'),c=t.expanderCollapsedClass;return t.expandAll?(h.css("display","table"),c=t.expanderExpandedClass):s?(h.css("display","table"),c=t.expanderCollapsedClass):f==1?(h.css("display","table"),c=t.expandFirst?t.expanderExpandedClass:t.expanderCollapsedClass):f==2?(t.expandFirst?h.css("display","table"):h.css("display","none"),c=t.expanderCollapsedClass):(h.css("display","none"),c=t.expanderCollapsedClass),n.each(t.columns,function(e,o){var l,s,a;if(o.field=="selectItem")r.hasSelectItem=!0,s=n('<td style="text-align:center;width:36px;"><\/td>'),o.radio&&(l=n('<input name="select_item" type="radio" value="'+i[t.code]+'"><\/input>'),s.append(l)),o.checkbox&&(l=n('<input name="select_item" type="checkbox" value="'+i[t.code]+'"><\/input>'),s.append(l)),h.append(s);else{if(s=n('<td name="'+o.field+'" class="'+o.field+'_cls"><\/td>'),o.width&&s.css("width",o.width),o.align&&s.css("text-align",o.align),t.expandColumn==e&&s.css("text-align","left"),o.valign&&s.css("vertical-align",o.valign),t.showTitle&&s.addClass("ellipsis"),o.formatter?s.html(o.formatter.call(this,i[o.field],i,e)):(t.showTitle&&s.attr("title",i[o.field]),s.text(i[o.field])),t.expandColumn==e)for(u?s.prepend('<span class="treetable-expander '+c+'"><\/span>'):s.prepend('<span class="treetable-expander"><\/span>'),a=0;a<f-1;a++)s.prepend('<span class="treetable-indent"><\/span>');h.append(s)}}),h},d=function(t){n(t).off("click").on("click",function(){r.refresh()})},g=function(){n(".bootstrap-tree-table .treetable-bars .columns label input").off("click").on("click",function(){var t=n(this);t.prop("checked")?r.showColumn(n(this).val()):r.hideColumn(n(this).val())})},a=function(){r.find("tbody").find("tr").unbind();r.find("tbody").find("tr").click(function(){r.rowClickHandler(this)})},v=function(){r.find("tbody").find("tr").find(".treetable-expander").unbind();r.find("tbody").find("tr").find(".treetable-expander").click(function(){r.rowExpandHandler(this)})};return r.getRootFlag=function(n){return n[t.parentCode]=="0"||n[t.parentCode]==0||n[t.parentCode]==null||n[t.parentCode]==""},r.rowClickHandler=function(t){if(r.hasSelectItem){var i=n(t).find("input[name='select_item']");i.attr("type")=="radio"?(i.prop("checked",!0),r.find("tbody").find("tr").removeClass("treetable-selected"),n(t).addClass("treetable-selected")):i.prop("checked")?(i.prop("checked",!1),n(t).removeClass("treetable-selected")):(i.prop("checked",!0),n(t).addClass("treetable-selected"))}},r.rowExpandHandler=function(i){var h=n(i).hasClass(t.expanderExpandedClass),c=n(i).hasClass(t.expanderCollapsedClass);if(h||c){var s=n(i).parent().parent(),e=s.attr("id"),f=r.find("tbody").find("tr[id^='"+e+"_']");if(h)n(i).removeClass(t.expanderExpandedClass),n(i).addClass(t.expanderCollapsedClass),f&&f.length>0&&n.each(f,function(t,i){n(i).css("display","none")});else if(n(i).removeClass(t.expanderCollapsedClass),n(i).addClass(t.expanderExpandedClass),f&&f.length==0){var l=s.find("input[type='radio']").val(),a=e.replace("row_id_","").split("_").length,v=r.data_list["_n_"+l],o=null;n.each(v,function(i,f){var c=e+"_"+i,v=r.data_list["_n_"+f[t.code]]?!0:!1,l=u(f,v,a+1,c,e,!0),h;o==null?s.after(l):(i>0&&(o=n("#"+e+"_"+(i-1).toString())),o.after(l));h=n("#"+c);h.click(function(){r.rowClickHandler(this)});h.find(".treetable-expander").click(function(){r.rowExpandHandler(this)});o==null&&(o=h)})}else f&&f.length>0&&n.each(f,function(i,r){var u=n("#"+n(r).attr("pid")).children().eq(t.expandColumn).find(".treetable-expander");u.hasClass(t.expanderExpandedClass)&&n(r).css("display","table")})}},r.refresh=function(n){n&&(r.lastAjaxParams=n);o(r.lastAjaxParams)},r.appendData=function(i){n.each(i,function(i,f){var e=r.data_obj["id_"+f[t.code]],o=r.data_obj["id_"+f[t.parentCode]],l=r.data_list["_n_"+f[t.parentCode]],h="",a="",v=1,s,y,w,k,d;if(e&&e.row_id&&e.row_id!=""&&(h=e.row_id),o){a=o.row_id;h==""&&(y=0,l&&l.length>0&&(y=l.length),h=o.row_id+"_"+y);v=o.lv+1;s=u(f,!1,v,h,a);var p=n("#"+o.row_id).children().eq(t.expandColumn).find(".treetable-expander"),b=p.hasClass(t.expanderExpandedClass),g=p.hasClass(t.expanderCollapsedClass);b||g?b&&s.css("display","table"):p.addClass(t.expanderCollapsedClass);e?(n("#"+e.row_id).before(s),n("#"+e.row_id).remove()):(w=o.row_id.split("_"),k=o.row_id.substring(0,o.row_id.length-1)+(parseInt(w[w.length-1])+1),n("#"+k).before(s))}else s=u(f,!1,v,h,a),e?(n("#"+e.row_id).before(s),n("#"+e.row_id).remove()):(d=r.find("tbody"),d.append(s));f.isShow=!0;c([f])});v();a();e()},r.toggleRow=function(t){var i=r.data_obj["id_"+t],u=n("#"+i.row_id).find(".treetable-expander");u.trigger("click")},r.expandRow=function(i){var f=r.data_obj["id_"+i],u=n("#"+f.row_id).find(".treetable-expander"),e=u.hasClass(t.expanderCollapsedClass);e&&u.trigger("click")},r.collapseRow=function(i){var f=r.data_obj["id_"+i],u=n("#"+f.row_id).find(".treetable-expander"),e=u.hasClass(t.expanderExpandedClass);e&&u.trigger("click")},r.expandAll=function(){r.find("tbody").find("tr").find(".treetable-expander").each(function(i,r){var u=n(r).hasClass(t.expanderCollapsedClass);u&&n(r).trigger("click")})},r.collapseAll=function(){r.find("tbody").find("tr").find(".treetable-expander").each(function(i,r){var u=n(r).hasClass(t.expanderExpandedClass);u&&n(r).trigger("click")})},r.showColumn=function(i,u){var f=n.inArray(i,r.hiddenColumns),e;f>-1&&r.hiddenColumns.splice(f,1);r.find("."+i+"_cls").show();u&&t.showColumns&&(e=n(".bootstrap-tree-table .treetable-bars .columns label").find("input[value='"+i+"']"),e.prop("checked","checked"))},r.hideColumn=function(i,u){if(r.hiddenColumns.push(i),r.find("."+i+"_cls").hide(),u&&t.showColumns){var f=n(".bootstrap-tree-table .treetable-bars .columns label").find("input[value='"+i+"']");f.prop("checked","")}},y(),r};n.fn.bootstrapTreeTable.methods={getSelections:function(t){var i=t.find("tbody").find("tr").find("input[name='select_item']:checked"),r=[],u;return i.attr("type")=="radio"?(u=t.data_obj["id_"+i.val()],r.push(u)):i.each(function(i,u){var f=t.data_obj["id_"+n(u).val()];r.push(f)}),r},refresh:function(n,t){t?n.refresh(t):n.refresh()},appendData:function(n,t){t&&n.appendData(t)},toggleRow:function(n,t){n.toggleRow(t)},expandRow:function(n,t){n.expandRow(t)},collapseRow:function(n,t){n.collapseRow(t)},expandAll:function(n){n.expandAll()},collapseAll:function(n){n.collapseAll()},showColumn:function(n,t){n.showColumn(t,!0)},hideColumn:function(n,t){n.hideColumn(t,!0)}};n.fn.bootstrapTreeTable.defaults={code:"code",parentCode:"parentCode",rootIdValue:null,data:null,method:"GET",url:null,ajaxParams:{},expandColumn:0,expandAll:!1,expandFirst:!0,striped:!1,bordered:!0,hover:!0,condensed:!1,columns:[],toolbar:null,height:0,showTitle:!0,showColumns:!0,showRefresh:!0,expanderExpandedClass:"glyphicon glyphicon-chevron-down",expanderCollapsedClass:"glyphicon glyphicon-chevron-right"}})(jQuery),function(n){"use strict";n.fn.ysTreeTable=function(t,i){if(typeof t=="string")return n.fn.ysTreeTable.methods[t](this,i);var u=n.extend({},n.fn.ysTreeTable.defaults,t||{}),r=n(this);return r.bootstrapTreeTable(u),r};n.fn.ysTreeTable.methods={search:function(n,t){return n.bootstrapTreeTable("refresh",t)},getRowById:function(n,t){var i=n.data("bootstrap.tree.table");for(var r in i.data_obj)if(i.data_obj[r]&&i.data_obj[r].Id==t)return i.data_obj[r]},expandRowById:function(n,t){return n.bootstrapTreeTable("expandRow",t)}};n.fn.ysTreeTable.defaults={method:"GET",code:"Id",parentCode:"ParentId",bordered:!0,expandColumn:"1",expandAll:!1,expandFirst:!0}}(jQuery);
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
