이 기사의 예에서는 js 헤더 정렬 구현 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 구현 방법은 다음과 같습니다. 코드 복사 코드는 다음과 같습니다. <br> //내림차순 정렬 여부<br> var isDescending = true;<br> /*****************************************<br> * * 정렬할 행은 <tbody></tbody> 태그에 배치되어야 합니다. * tableId: 정렬 테이블 ID<br> * colNo: 정렬된 열 번호, 즉 어떤 열이 0부터 시작하는지 <br> * startRowNo: 정렬 시작 행 번호, 0부터 시작<br> * sortLength: 정렬할 행 수, <br> * 유형: 정렬 열의 유형 <br> */<br> 함수 정렬(tableId, colNo,startRowNo, sortLength, type)<br> {<br> //정렬할 행의 개수가 1 또는 0이면 정렬 작업을 수행하지 않습니다 <br> If(sortLength<=1){<br /> 반품;<br /> }<br /> var currTable = document.getElementById(tableId);<br /> var theHeader = currTable.outerHTML.substring(0, currTable.outerHTML.indexOf('<TBODY>') 7)<br> var theFooter = currTable.outerHTML.substring(currTable.outerHTML.indexOf('</TBODY>')-8);<br> //여기서의 행 수는 헤더 행과 테이블 행을 제거한 후의 행 수입니다<br> var theRows = new Array(sortLength);<br> //테이블의 데이터를 반복합니다<br> for(i=startRowNo; i<sortLength startRowNo; i )<br /> {<br /> theRows[i-startRowNo] = new Array(currTable.rows[i].cells[colNo].innerText.toLowerCase(), currTable.rows[i].outerHTML);<br /> }<br /> If(type.toUpperCase()=='NUMBER')<br /> {<br /> theRows.sort(compareNumber);<br /> }<br /> else if(type.toUpperCase()=='DATE')<br /> theRows.sort(compareDate);<br /> else if(type.toUpperCase()=='STRING')<br /> theRows.sort(compareString);<br /> var tableInfo=''<br /> for(j=0; j<theRows.length; j )<br /> {<br /> tableInfo =theRows[j][1];<br /> }<br /> isDescending = !isDescending;<br /> currTable.outerHTML= theHeader tableInfo theFooter;<br /> 반품 ;<br /> }<br /> //숫자 비교 <br /> 함수 비교번호(x, y)<br /> {<br /> //데이터를 통화 형식으로 변환<br /> a = x[0].excludeChars(",").trim();<br /> b = y[0].excludeChars(",").trim();<br /> <br /> If(a==""){a=0;}<br /> If(b==""){b=0;}<br /> if(isDescending)<br /> {<br /> 반환parseFloat(b) -parseFloat(a);<br /> }<br /> 그 외<br /> {<br /> 반환parseFloat(a) -parseFloat(b);<br /> }<br /> }<br /> //문자열 비교<br /> 함수 비교문자열(x, y)<br /> {<br /> if(isDescending)<br /> {<br /> if(x[0]>y[0]) return -1;<br> else if(x[0]<y[0]) 1을 반환;<br /> 그렇지 않으면 0을 반환합니다.<br /> }<br /> 그 외<br /> {<br /> if(x[0]<y[0]) return -1;<br /> else if(x[0]>y[0]) 1을 반환합니다.<br> 그렇지 않으면 0을 반환합니다.<br> }<br> }<br> //对时间进行比较<br> 함수 비교 날짜(x,y){<br> var arr=x[0].split("-"); <br> var starttime=new Date(arr[0],arr[1],arr[2]); <br> var starttimes=starttime.getTime(); <br> var arrs=y[0].split("-"); <br> var lktime=new Date(arrs[0],arrs[1],arrs[2]); <br> var lktimes=lktime.getTime();<br> <br> if(isDescending)<br> {<br> lktimes 반환 - 시작 시간;<br> }<br> 그 외<br> {<br> 반환 시작 시간 - lktimes;<br> }<br> }<br> //去除字符串中所有指定字符串<br> String.prototype.excludeChars = 함수(문자){<br> var 일치 = new RegExp(chars , "g") ;<br> return this.replace(matching , '') ;<br> }<br> <br> </div> <p>希望本文所述对大家의 javascript는 程序设计有所帮助。</p>