var table;//定義table對象用于vue的操作
$(function () {
var columnDefsDate=[];
var columnsData=[ CONSTANT.DATA_TABLES.COLUMN.CHECKBOX,//引用于CONSTANT.js 抽取到公共js
{ "data": "id","visible": false },
{ "data": "name" ,"render":function ( data, type, row, meta ) {
if(row.fileType=="file"){
return ' <div style="text-overflow: ellipsis;" '+'title="'+data +'"><a href="javascript:;" class="flow" onclick=getChild('+row.id+',"'+row.code+'");><i class="fa fa-folder fa-2x" style="color:#f0ad4e"></i> '+data+'</a></div>';
}if(row.category=="picture"){
return ' <div style="text-overflow: ellipsis;" '+'title="'+data +'"><a href="'+row.aliUrl+'" class="fancybox flow" ><i class="'+geticon(row.fileType)+' fa-2x"></i> '+data+'</a></div>';
}else{
return ' <div style="text-overflow: ellipsis;" '+'title="'+data +'"><a href="javascript:;" class="flow"><i class="'+geticon(row.fileType)+' fa-2x"></i> '+data+'</a></div>';
}
}},
{ "data": "createTime"},
{ "data": "fileSize"},
{ "data": null ,"render":function ( data, type, row,meta ) {
var isAdmin=false;
var rootPub=false;
var me=false;
var flag=false;
if(vm.rootEntity!=null){
me=vm.rootEntity.userId==row.userId?true:false;//判斷是否是當前用戶上傳的文件
isAdmin=vm.superAdmin=vm.rootEntity.userId?true:false;//是超級管理員
rootPub=row.userId==0?true:false;//公共文件根目錄不能刪除
if(isAdmin||me){
flag=true;
}
if(rootPub){
flag=false;
}
}
var data="";
if(vm.IsFileManager){
if(row.fileType=="file"){
if(flag){data='<a onClick="update('+row.id+')"><i class="fa fa-pencil-square-o"></i> </a>';}{data ='';}
}else{
flag=true;
data='<a onClick="download(\'' + row.aliUrl + '\');"><i class="fa fa-download"> </i></a>';
}
if(flag){data+='<a onClick="del('+row.id+')"><i class="fa fa-times-circle"></i></a>';}{data +='';}
}
return data;
}},
];
table=$('#example').DataTable( {
"responsive": true,
"serverSide" : true,
//l - 每行顯示的記錄數(shù) f - 搜索框 t - 表格 i - 表格信息 p - 分頁條 r - 加載時的進度條
"dom":'<"top">t<"bottom">if<"clear">',//'<"top"iflp<"clear">>rt<"bottom"ilp<"clear">>'
"ordering" :false,// 禁止排序
"ajax":{
"url": '/manager/sys/sysFile/list',
"type":"post",
"cache": false,
"data": function(d){
d.name=vm.q.query;//查詢條件
d.parentDirectory=vm.q.parentDirectory;//上級文件夾
d.category=vm.q.category;//分類
d.code=vm.q.code;
if(d.parentDirectory==0){//跟目錄操作時候刷新為跟目錄
vm.q.code="";
}
},
"dataSrc":function (json) {//設(shè)置返回值綁定data
json.recordsTotal = json.page.recordsTotal||0;//recordsTotal 設(shè)置為頂級
json.recordsFiltered = json.page.recordsFiltered||0;//recordsFiltered 設(shè)置為頂級
vm.q.category=null;
vm.q.parentDirectory=null;
vm.q.label=null;
vm.rootEntity=json.page.sEcho.rootEntity;//當前目錄信息
/*vm.id=vm.rootEntity!=null?vm.rootEntity.id:null;*/
vm.superAdmin=json.page.sEcho.superAdmin;//超級管理員
vm.userId=json.page.sEcho.userId;//當前用戶id
vm.IsFileManager=json.page.sEcho.IsFileManager;//是否切換到文件表
/*console.log(vm.IsFileManager);*/
return json.page.list;
},
},
"aLengthMenu":[5,10,30,50],
"pageLength":10,
"bStateSave": false,//狀態(tài)保存产雹,使用了翻頁或者改變了每頁顯示數(shù)據(jù)數(shù)量,會保存在cookie中间唉,下回訪問時會顯示上一次關(guān)閉頁面時的內(nèi)容。
"searching":false,//禁用搜索(搜索框)
"paging": true,//禁用分頁 用于設(shè)置給服務(wù)器傳遞分頁信息
"drawCallback" : function(settings) {
/**全選反選觸發(fā)事件*/
$(settings.nTable).find(":checkbox[name='keeperUserGroup-checkable']").click(function(e){
if($(this).prop('checked')){
table.$('tr').addClass('warning selected');
$(settings.nTable).find('tbody tr input:checkbox').prop('checked', true);
}else{
table.$('tr').removeClass('warning selected');
$(settings.nTable).find('tbody tr input:checkbox').prop('checked', false);
}
vm.setType();
});
/**TR行事件*/
$(settings.nTable).find("tbody tr").click(function(e) {
//取消全選
$(settings.nTable).find(":checkbox[name='keeperUserGroup-checkable']").prop('checked', false);
//獲取當前tr和checkbox元素,當前已選中
var tr = $(e.target).parents('tr');
var checkbox = $(e.target).parents('tr').find(":checkbox");
var checkedLen = $(settings.nTable).find("input:checkbox:checked").length;
//當期觸發(fā)事件是checkbox
if($(e.target).is('input:checkbox')){
tr.toggleClass('warning selected');
vm.setType();
return true;
}
//清除非當前行內(nèi)樣式及checkbox
tr.siblings().removeClass('warning selected');
tr.siblings().find(":checkbox").prop('checked', false);
//當前已選中多個只保留當前
if(checkedLen >= 2){
checkbox.prop('checked', true);
tr.addClass('warning selected');
}else{
//激活當前行內(nèi)checkbox
checkbox.prop('checked', !checkbox.prop('checked'));
tr.toggleClass('warning selected');
}
//設(shè)置多選不可點擊(頂航操作按鈕)
vm.setType();
});
},
"columns": columnsData, //對接收到的json格式數(shù)據(jù)進行處理,data為json中對應(yīng)的key
"columnDefs": columnDefsDate,
"oLanguage" : {
sProcessing : "處理中...",
sLengthMenu : "每頁 _MENU_ 項",
sZeroRecords : "沒有匹配結(jié)果",
sInfo : "顯示_START_ 至 _TOTAL_ 項署拟,共 _TOTAL_ 項",
sInfoEmpty : "顯示 0 至 0 項铁瞒,共 0 項",
sInfoFiltered : "(由 _MAX_ 項結(jié)果過濾)",
sInfoPostFix : "",
sSearch : "搜索:",
searchPlaceholder : "關(guān)鍵字搜索",
sUrl : "",
sEmptyTable : "表中數(shù)據(jù)為空",
sLoadingRecords : "載入中...",
sInfoThousands : ",",
oPaginate : {
sFirst : "首頁",
sPrevious : "上頁",
sNext : "下頁",
sLast : "末頁"
},
oAria : {
sSortAscending : ": 以升序排列此列",
sSortDescending : ": 以降序排列此列"
}
},
} );
});
補發(fā)文件管理系統(tǒng)優(yōu)化js
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來衰粹,“玉大人锣光,你說我怎么就攤上這事÷脸埽” “怎么了誊爹?”我有些...
- 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我频丘,道長箍铭,這世上最難降的妖魔是什么? 我笑而不...
- 正文 為了忘掉前任椎镣,我火速辦了婚禮诈火,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘状答。我一直安慰自己冷守,他們只是感情好,可當我...
- 文/花漫 我一把揭開白布惊科。 她就那樣靜靜地躺著拍摇,像睡著了一般。 火紅的嫁衣襯著肌膚如雪馆截。 梳的紋絲不亂的頭發(fā)上充活,一...
- 文/蒼蘭香墨 我猛地睜開眼宿接,長吁一口氣:“原來是場噩夢啊……” “哼赘淮!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起睦霎,我...
- 正文 年R本政府宣布涧黄,位于F島的核電站,受9級特大地震影響赋荆,放射性物質(zhì)發(fā)生泄漏笋妥。R本人自食惡果不足惜,卻給世界環(huán)境...
- 文/蒙蒙 一窄潭、第九天 我趴在偏房一處隱蔽的房頂上張望春宣。 院中可真熱鬧,春花似錦嫉你、人聲如沸月帝。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽嚷辅。三九已至,卻和暖如春距误,著一層夾襖步出監(jiān)牢的瞬間簸搞,已是汗流浹背。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- var table;//定義table對象用于vue的操作 $(function () { var columnD...
- 前言 File System 模塊,字面翻譯就是文件系統(tǒng)般卑,用于處理文件和文件流的武鲁,比如讀寫文件、創(chuàng)建文件或文件夾蝠检、...
- 解決vue包很大問題沐鼠,首次加載很慢問題。常見的解決方法有1.cdn 引入 在index頁叹谁,script標簽引入各...