2011-09-29 7 views
1

나는 tablesorter library을 사용 중입니다. 내 문제는 내 테이블 안의 셀에있는 모든 항목이 링크이고 라이브러리가 텍스트 대신 셀 안의 HTML을보고 있기 때문에 잘못 정렬하기 시작한다는 것입니다. 즉, 다음 셀 내용에서;jQuery 필터링 및 테이블 정렬 - "내부"HTML 태그를 보는 방법

<a href="ledger.php?var=345345">$100.64</a>이에 정렬 :

<a href="ledger.php?var=345345"> 대신

$100.64의 나는 세포의 내부 텍스트를 보는 방법이 알고있다. 웹 사이트에 나열된 간단한 방법으로 시작했습니다 (text extraction method). 그러나, 나는 내 인생이 제대로 작동하도록 할 수는 없다.

내 JS 코드를 사용하면이 텍스트 추출을 올바르게 적용하는 방법을 알려 줄 수 있습니까? 이것은 내가 지금 가지고있는 것입니다 (아래).

"텍스트 추출"행을 주석 처리하지 않은 경우이 코드의 현재 결과는 플러그인로드에 실패하고 페이지의 모든 jQuery가 실패합니다. 웹 개발자 플러그인의 콘솔 오류는 다음과 같습니다

Error: node.childNodes[0].childNodes[0] is undefined Source File:

$(document).ready(function() { 
      // TableSorter 
       $("#dt-results") 
       .tablesorter({ 
           widgets: ['zebra'], 
           sortList: [[0,1]], 

           // define a custom text extraction function 
           textExtraction: function(node) { 
            // extract data from markup and return it 
            return node.childNodes[0].childNodes[0].innerHTML; 
           } 
       }) 
       .tablesorterPager({container: $("#pager")}) 
       .tablesorterFilter({filterContainer: $("#filter-box"), 
           filterClearContainer: $("#filter-clear-button"), 
           filterCaseSensitive: false, 
           filterWaitTime: 100}); 
     }); 

감사

+0

일부 HTML은 공유 할 수 있습니까? ... 한 행이면 충분합니다. – Mottie

답변

5

, 왜 text()를 사용하지 않는 당신이 jQuery를 사용하고 있기 때문에? http://api.jquery.com/text/

textExtraction: function(node) { 
    return $(node).text(); 
} 
+0

this is close ... 내 열 중 하나에서 링크 용 HTML과 텍스트의 색을 변경하는 에 대한 HTML이 있습니다. 이것은 정확하게 정렬되지 않습니다. 그 안에 들어가는 어떤 생각? – Shackrock

+0

실제로 HTML 내부에 문제가 발생하지 않는다면, 달러 번호를 올바르게 정렬하지 않는 것처럼 ... 그들은 100.34 및 3.63과 .34 – Shackrock

관련 문제