/** * 初始化结果信息的第一页面 * @param results * @returns */function initResultInfoPage_util(results){ //绘制第一页 redrawIndexResultPage_util(results, 1); //绘制页码导航 var totalItemNumber = results.length redrawPageNumberNavigation_util(totalItemNumber, 1)}/** * 重绘指定索引的页面 * @param results * @param index * @returns */function redrawIndexResultPage_util(results, currentIndex){ var innerHtml = ""; var totalItemNumber = results.length; var startIndex = (currentIndex-1) * RESULT_SHOW_THRESHOLD; //计算当前页码开始绘制item的下标 var endIndex = currentIndex * RESULT_SHOW_THRESHOLD - 1; //计算当前页码结束绘制item的下标 if( endIndex >= totalItemNumber ) {//页码超过最大item数目时,将最后item对应的下标赋给endIndex endIndex = totalItemNumber - 1; } for(var index = startIndex; index <= endIndex; index++ ) { var item = results[index]; var lawyerId = ""; var lawyerName = item.name; var lawyerInstitution = item.institution; var summary = generateSummary_util(item.introduction); innerHtml += '' + ' ' + lawyerInstitution + ''; } $("#results_showItemList").html(innerHtml);//绘制结果的展示页}/** * 通过信息对,生成总结 * @param infos * @returns */function generateSummary_util(infos){ var summary = ""; var count = 0; $.each(infos, function(key, value) { if( count > 0 ) { summary += "," } summary += key + '' + value + '' count ++; }) return summary;}/** * 重绘页码导航:一共有4种情况。 * [1]如果大于最大页码展示的范围,则根据激活的页码,计算开始和结束绘制的页码: * [1.1]当前上界大于总最大页码时; * [1.2]当前下界界小于等于0时; * [1.3]其余情况,开始和结束绘制页码,分别等于当前页码的下界和上界. * [2]如果最大总页码小于最大页码展示的范围,则开始和结束绘制页码,始终分别为1和maxPageNumber. * @param totalItemNumber * @param currentIndex * @returns */function redrawPageNumberNavigation_util(totalItemNumber, currentIndex){ currentIndex = parseInt(currentIndex); var maxPageNumber = parseInt(totalItemNumber / RESULT_SHOW_THRESHOLD) ; //计算最大页码 if(totalItemNumber % RESULT_SHOW_THRESHOLD != 0) {//当有余数时,则最大页码加1 maxPageNumber += 1; } var startPageNumber = 0; //计算开始绘制的页码 var endPageNumber = 0; //计算结束绘制的页码 if(maxPageNumber > PAGE_NUMBER_THRESHOLD) {//[1]如果大于最大页码展示的范围,则根据激活的页码,计算开始和结束绘制的页码 var lowerBound = currentIndex - ( PAGE_NUMBER_THRESHOLD/2 ); //计算当前页码的下边界 var upperBound = currentIndex + ( PAGE_NUMBER_THRESHOLD/2 ) - 1; //计算当前页码的上边界 if(upperBound > maxPageNumber) {//[1.1]当前上界大于总最大页码时 endPageNumber = maxPageNumber; //在总页码大于最大展示页码的前提下,当前页码上界大于最大总页码时,结束绘制页码始终为最大总页码. startPageNumber = maxPageNumber - PAGE_NUMBER_THRESHOLD + 1; //此时,开始绘制页码始终为maxPageNumber-PAGE_NUMBER_THRESHOLD+1. }else if(lowerBound <= 0) {//[1.2]当前下界界小于等于0时 startPageNumber = 1; //在总页码大于最大展示页码的前提下,当前页码下界大于等于0时,开始绘制页码始终为1. endPageNumber = PAGE_NUMBER_THRESHOLD; //此时,结束绘制页码始终为PAGE_NUMBER_THRESHOLD. }else {//[1.3]其余情况,开始和结束绘制页码,分别等于当前页码的下界和上界. startPageNumber = lowerBound; endPageNumber = upperBound; } }else {//[2]如果最大总页码小于最大页码展示的范围,则开始和结束绘制页码,始终分别为1和maxPageNumber. startPageNumber = 1; endPageNumber = maxPageNumber; } //根据开始和结束绘制页码,以及当前激活页码,实施绘制页码导航栏。 actionRedrawPageNumberNavigation_util(startPageNumber, endPageNumber, currentIndex); }/** * 根据开始和结束绘制页码,以及当前激活页码,实施绘制页码导航栏。 * @param startPageNumber * @param endPageNumber * @param currentIndex * @returns */function actionRedrawPageNumberNavigation_util(startPageNumber, endPageNumber, currentIndex){ var innerHtml = ""; var disabled = ""; if(currentIndex == startPageNumber) { disabled = ' disabled="true" '; } innerHtml += ''; for(var index = startPageNumber; index <= endPageNumber; index++) { var mark = ''; var markActive = ' markActive="false" ' if(currentIndex == index) { mark = 'active'; markActive = ' markActive="true" ' } innerHtml += ''; } disabled = ""; if(currentIndex == endPageNumber) { disabled = ' disabled="disabled" '; } innerHtml += ''; $("#results_pageNumberNavigation").html(innerHtml);}/** * 点击激活当前页面 */function activeCurrentPage(node){ var markActive = $(node).attr("markActive"); //获取标志 if(markActive == "false" || markActive == false) { var currentPageNumber = $(node).attr("currentPageNumber"); redrawIndexResultPage_util(results_global, currentPageNumber);//重绘项目列表 var totalItemNumber = results_global.length; //获取全局变量items的长度. redrawPageNumberNavigation_util(totalItemNumber, currentPageNumber);//重绘页码导航 }}/** * 点击激活上一页. * @param node * @returns */function activePreviousPage(node){ var previousPageNumber = $(node).attr("previousPageNumber"); //获取上一页的页码 redrawIndexResultPage_util(results_global, previousPageNumber);//重绘项目列表 var totalItemNumber = results_global.length; //获取全局变量items的长度. redrawPageNumberNavigation_util(totalItemNumber, previousPageNumber);//重绘页码导航}/** * 点击激活下一页. * @param node * @returns */function activeNextPage(node){ var nextPageNumber = $(node).attr("nextPageNumber"); //获取下一页的页码 redrawIndexResultPage_util(results_global, nextPageNumber);//重绘项目列表 var totalItemNumber = results_global.length; //获取全局变量items的长度. redrawPageNumberNavigation_util(totalItemNumber, nextPageNumber);//重绘页码导航}
' + '' + summary + '
' + '