XML Code
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
$(function () {
dynGenPagingDataAndList(dataInfos, allRecords, pageSize, curPage); }); /* 动态生成数据记录 和分页列表导航 * / function dynGenPagingDataAndList(dataInfosParam, allRecordsParam, pageSizeParam, curPageParam) { var jsonObjectArray = eval(dataInfosParam); if(jsonObjectArray.length == 0) { $( "#favoriteInfoTbody").html( ""); $( "#favoriteInfoTbody").append(' <b style= "font-size: 14px;" >暂无收藏报表数据 </b>'); return; } curPage = curPageParam; pageSize = pageSizeParam; allRecords = allRecordsParam; var recordSizeParam = jsonObjectArray.length; serialNumber = (curPageParam - 1) * pageSizeParam + 1; dynGenDataRecord(jsonObjectArray); getDynGenPagingList('pagingNavigation', 'myfavorite', '?{uriPath}', allRecordsParam, pageSizeParam, curPageParam, recordSizeParam); tableChangeColor(); } /* 动态生成数据记录 * / function dynGenDataRecord(jsonObjectArrayParam) { var shareTemplate; var dynGenPagingInfoStr = ""; var myFavoriteInfoTr = ' <tr class= "table-tr-content" ><td>#serialNumber </td><td><a style= "text-decoration: underline;" onclick= "javascript:openDashboard(\'#menu_action\')" >#menu_name </a></td><td>#app_type </td><td>#source_type </td><td>#source_user </td><td>#favorite_date </td><td>#shareTemplate <a style= "text-decoration: underline;" onclick= "javascript:cleFavoriteReport(\'#menu_id\')" >删除 </a></td></tr>'; if(sharePriority == '0') { shareTemplate = ""; } else { shareTemplate = ' <a name= "shareOperate" style= "text-decoration: underline;" onclick= "javascript:bindingShareOperate(\'#menu_id\', \'#menu_name\');" >共享 </a> '; } for(var i = 0; i < jsonObjectArrayParam.length; i++) { dynGenPagingInfoStr += myFavoriteInfoTr.replace( /#shareTemplate /g, shareTemplate). replace( /#serialNumber /g, serialNumber++). replace( /#menu_action /g, jsonObjectArrayParam[i].MENU_ACTION). replace( /#menu_name /g, jsonObjectArrayParam[i].MENU_NAME). replace( /#menu_id /g, jsonObjectArrayParam[i].MENU_ID). replace( /#app_type /g, jsonObjectArrayParam[i].APP_TYPE). replace( /#source_type /g, jsonObjectArrayParam[i].SOURCE_TYPE). replace( /#source_user /g, jsonObjectArrayParam[i].SOURCE_USER). replace( /#favorite_date /g, jsonObjectArrayParam[i].FAVORITE_DATE); } $( "#favoriteInfoTbody").html( ""); $( "#favoriteInfoTbody").append(dynGenPagingInfoStr); } |
==========================================================================================================================================
pagingNavigation.css
XML Code
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
.a_selected {
margin: 0px 1px 0px 1px; padding: 0px 5px 0px 5px; } .a_no_select { margin: 0px 1px 0px 1px; padding: 0px 8px 0px 8px; border: 1px solid #BEBEBE; background: #E0E0E0; } .a_no_select:hover { color: #fff; cursor: pointer; background-color: #cc0000; text-decoration: none; } .div_left { float: left; padding-left: 10px; font-size: 14px; } .input_button { width: 45px; font-size: 14px; text-align: center; } |
tableData.css
XML Code
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
table {
width: 100%; padding-left: 5px; font-size: 14px; border-collapse: collapse; } table td { width: 15%; height: 45px; border: 1px solid #aaa; } input { width: 30px; font-size: 14px; text-align: center; } a { text-align: left; font-size: 14px; font-weight: bold; color: #3b3b3b; } a:hover { color: #e84242; cursor: pointer; } .div_content { padding-left: 6%; height: 50px; line-height: 50px; } .table-tr-title{ height: 26px; font-size: 14px; text-align: center; } .table-tr-content{ height: 18px; background: #FFFFFF; text-align: center; font-size: 14px; } .normalEvenTD{ background: #DFD8D8; } .normalOddTD{ background: #FFFFFF; } .hoverTD{ background-color: #eafcd5; height: 18px; text-align: center; font-size: 14px; } .trSelected{ background-color: #51b2f6; height: 18px; text-align: center; font-size: 14px; } |
==========================================================================================================================================
pagingNavigation.js
XML Code
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 |
/* 动态生成分页列表 *
/
function getDynGenPagingList(pagingNavigationId, operateType, uriPath, allRecordsParam, pageSizeParam, curPageParam, recordSizeParam) { /* 分页码显示窗口大小 * / var pagingCodeShowSize = 6; var dynGenPagingInfoStr = ""; /* 总页数 * / var allPages = Math.ceil(allRecordsParam /pageSizeParam); /* 上一页 * / var prePage = parseInt(curPageParam) - 1; /* 下一页 * / var nextPage = parseInt(curPageParam) + 1; /* 尾页 * / var lastPage = allPages; /* 当前页开始记录编号 * / var curPageStartRecord = prePage * pageSizeParam + 1; /* 当前页结束记录编号 * / var curPageEndRecord = curPageStartRecord + recordSizeParam - 1; curPageEndRecord = curPageEndRecord > allRecordsParam ? allRecordsParam : curPageEndRecord; /* 从第几页开始显示分页信息 * / var pagingCodeBegin = 0; /* 分页信息显示到第几页 * / var pagingCodeEnd = 0; var pagingOperationTemplate = ' <a class= "a_no_select" onclick= "javascript:clicknav(\'' + uriPath + '?action=asynRequest&type=' + operateType + '&curPage=#curPage&pageSize=' + pageSizeParam + '\') ">#value</a>'; var noOperationTemplate = ' <a class= "a_no_select" >#value </a>'; dynGenPagingInfoStr += ' <div class= "div_left" >当前第#curPage /#allPages页,第#startRecord-#endRecord /#allRecords条记录 </div>'. replace( /#curPage /g, curPageParam).replace( /#allPages /g, allPages). replace( /#startRecord /g, curPageStartRecord).replace( /#endRecord /g, curPageEndRecord). replace( /#allRecords /g, allRecordsParam); dynGenPagingInfoStr += ' <div class= "div_left" style= "display:inline-block;" >'; /* 显示首页、上一页 * / if(allPages > 1) { dynGenPagingInfoStr += pagingOperationTemplate.replace( /#curPage /g, 1). replace( /#value /g, "<<"); if(prePage > 0) { dynGenPagingInfoStr += pagingOperationTemplate.replace( /#curPage /g, prePage). replace( /#value /g, "<"); } else { dynGenPagingInfoStr += noOperationTemplate.replace( /#value /g, "<"); } } /* =======================计算开始、结束分页码======================== * / pagingCodeEnd = parseInt(curPageParam) + Math.floor(pagingCodeShowSize /2) - 1; if(pagingCodeEnd > allPages) { pagingCodeEnd = allPages; } pagingCodeBegin = curPageParam - Math.floor(pagingCodeShowSize /2) + 1; if(pagingCodeBegin < 1 ) { pagingCodeBegin = 1 ; } /* ======================= 计算开始、结束分页码======================== */ /* ============================ 显示分页码=========================== */ if(pagingCodeBegin > 1) { dynGenPagingInfoStr += ' <a class= "a_selected" >... </a>'; } for(var i = pagingCodeBegin; i <= pagingCodeEnd; i++) { if(curPageParam != i) { dynGenPagingInfoStr += pagingOperationTemplate. replace( /#curPage /g, i).replace( /#value /g, i); } else { dynGenPagingInfoStr += ' <a class= "a_selected" ><b style= "color: red;" >#pagingCode </b></a>'.replace( /#pagingCode /g, i); } } if(pagingCodeEnd < allPages) { dynGenPagingInfoStr += ' <a class= "a_selected" >... </a>'; } /* ============================显示分页码=========================== * / /* 显示末页、下一页 * / if(curPageParam <= allPages) { if(nextPage <= allPages) { dynGenPagingInfoStr += pagingOperationTemplate.replace( /#curPage /g, nextPage). replace( /#value /g, ">"); } else { dynGenPagingInfoStr += noOperationTemplate.replace( /#value /g, ">"); } dynGenPagingInfoStr += pagingOperationTemplate.replace( /#curPage /g, lastPage). replace( /#value /g, ">>"); } dynGenPagingInfoStr += ' </div>'; if(allPages > 1) { dynGenPagingInfoStr += (' <div class= "div_left" >到第 <input id= "skipToPage" value= "#curPage" />页'.replace( /#curPage /g, curPageParam) + ' <input class= "input_button" type= "button" onclick= "javascript:skipToNPage(\'' + uriPath + '?action=asynRequest&type=' + operateType + '&curPage=#curPage&pageSize=#pageSize, #allPages\')" value= "确定" /></div>').replace( /#pageSize /g, pageSizeParam). replace( /#allPages /g, allPages); } dynGenPagingInfoStr += (' <div class= "div_left" >当页显示 <input id= "pageSize" value= "#pageSizeValue" onchange= "javascript:changePageSize(\'' + uriPath + '?action=asynRequest&type=' + operateType + '&curPage=#curPage&pageSize=#pageSize\')" />条记录 </div>').replace( /#curPage /g, curPageParam). replace( /#pageSizeValue /g, pageSizeParam); var startJinHao = pagingNavigationId.indexOf( "#"); if(startJinHao == -1){ pagingNavigationId = "#" + pagingNavigationId; } $(pagingNavigationId).html( ""); $(pagingNavigationId).append(dynGenPagingInfoStr); } /* 跳转到某页 * / function skipToNPage(pagingUrlParam, allPagesParam) { var skipToPage = parseInt($( "#skipToPage").val()); if(skipToPage < 1 || skipToPage > allPagesParam) { alert('请输入1-' + allPagesParam + '的数字'); return; } clicknav(pagingUrlParam.replace( /#curPage /g, skipToPage)); } /* 改变显示记录数 * / function changePageSize(pagingUrlParam) { if(!$.isNumeric($( "#pageSize").val())) { alert('请输入数字'); return; } var pageSize = parseInt($( "#pageSize").val()); if(pageSize <= 0) { alert( "请输入大于0的数字"); return; } clicknav(pagingUrlParam.replace( /#pageSize /g, pageSize)); } /* 分页操作 * / function clicknav(pagingUrlParam) { $.getJSON(pagingUrlParam, function (jsonObject){ dynGenPagingDataAndList(jsonObject.dataInfos, jsonObject.allRecords, jsonObject.pageSize, jsonObject.curPage); }); } |
==========================================================================================================================================
tableData.js
XML Code
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
function tableChangeColor() {
var dtSelector = ".list"; var tbList = $(dtSelector); tbList.each(function() { var self = this; // 从标头行下一行开始的奇数行,行数:(1,3,5...) $( "tr:odd", $(self)).addClass( "normalEvenTD"); // 从标头行下一行开始的偶数行,行数:(2,4,6...) $( "tr:even", $(self)).addClass( "normalOddTD"); // 鼠标经过的行变色 $( "tr:not(:first)", $(self)).hover( function () { $(this).addClass('hoverTD');$(this).removeClass('table-td-content'); }, function () { $(this).removeClass('hoverTD');$(this).addClass('table-td-content'); } ); // 选择行变色 $( "tr", $(self)).click(function (){ var trThis = this; $(self).find( ".trSelected").removeClass('trSelected'); if ($(trThis).get(0) == $( "tr:first", $(self)).get(0)){ return; } $(trThis).addClass('trSelected'); }); }); } |