2012-01-12 4 views
2

http://jsfiddle.net/RPHA7/을 참조하십시오.jQuery 테이블러를 사용하여 새로운 열을 선택했을 때 모든 열의 이전 정렬 상태를 재설정 할 수 있습니까?

나는 jQuery tablesorter을 사용하고 있습니다.

jsfiddle에는 정렬되지 않은 상태로 시작하는 두 개의 열 (색상 및 동물)이 있습니다. '색상'을 클릭하면 해당 열을 기준으로 오름차순 (파란색, 녹색 등 ...)으로 정렬됩니다. 그런 다음 "동물"을 클릭하면 해당 열을 기준으로 오름차순으로 정렬됩니다 (Aardvark, Dolphin 등). 그런 다음 "색상"을 두 번 클릭하면 내림차순으로 정렬됩니다 (빨강, 보라색 등).

이것은 반 직관적 인 것처럼 보입니다. 같은 열을 반복해서 클릭하는 경우에만 오름차순/내림차순 전환을 기대합니다. 다른 열을 클릭하면 이전 상태에 관계없이 항상 해당 열의 정렬을 오름차순으로 시작해야합니다.

jQuery 테이블러 (또는 일부 해킹)에서 이와 같이 작동하도록 설정되어 있습니까?

+0

내 솔루션이 제대로 작동 했나요? – redmoon7777

+0

잘 했어, 고마워! –

+0

방금 ​​[tablesorter] (https://github.com/Mottie/tablesorter) 포크를 [ "sortReset"] (http://mottie.github.com/tablesorter/docs/#sortreset)이라는 새 옵션으로 업데이트했습니다.), true로 설정하면 세 번째 클릭에서 클릭 된 열 (모든 열 제외)의 정렬 설정이 재설정됩니다. 그것은 정확히 당신이 원했던 것이 아닐지 모르지만 그것은 또 다른 선택입니다;) – Mottie

답변

2

확인 당신은 jquery.tablesorter.js에 몇 줄을 추가해야합니다 : 라인 727에

당신이 있어야합니다 this.order = this.count++ % 2;

을 그 다음 줄 삽입 직후 :

for(var trc in $headers) 
{ 
    if(trc != i) 
     $headers[trc].count = 0; 
} 

그게 다예요 :)

관련 문제