2012-02-11 4 views
0

다음 데이터에 대한 테이블 정렬을 위해 jquery 데이터 테이블을 사용합니다.Jquery 데이터 테이블 숫자 정렬

 <table width="50%" border="0" id="pls-pitching"> 
    <tr> 
    <td><span>1</span> 
    <input name="t" type="text" value="1" /></td> 
    </tr> 
    <tr> 
    <td><span>5</span> 
    <input name="t" type="text" value="5" /></td> 
    </tr> 

    <tr> 
    <td><span>2</span> 
    <input name="t" type="text" value="2" /></td> 
    </tr> 
    <tr> 
    <td><span>3</span> 
    <input name="t" type="text" value="3" /></td> 
    </tr> 
    <tr> 
    <td><span>10</span> 
    <input name="t" type="text" value="10" /></td> 
    </tr> 
    </table> 

여기에 내가 1,2,3,5,10 내가 텍스트 상자 값 정렬을 구현할 수 있기 때문에 텍스트 상자의 값을 정렬 할 수 있습니다. 그래서 (<span>10</span>)와 같은 텍스트 상자 앞에 <span> 태그를 추가했습니다. 이제 값을 정렬합니다. 하지만 그것은 1,10,2,3,5와 같습니다.

하지만 숫자 정렬과 같이 정렬해야합니다.

나는 다음과 같은 자바 스크립트 명령

$('#pls-pitching').dataTable(); 

텍스트 상자 값 정렬을 구현할 수있는 가능성이 사용? 불필요한 일을하십시오. 감사합니다

답변

0

비교를 수행하려면 자체 함수를 작성해야합니다.

0

Here is example of how to do it 나는 같은 문제를했고이 (숫자 값), 나를 위해 일한 것을

jQuery.fn.dataTableExt.oSort['num-html-asc'] = function(a,b) { 
    var x = a.replace(/<.*?>/g, ""); 
    var y = b.replace(/<.*?>/g, ""); 
    x = parseInt(x); 
    y = parseInt(y); 
    return ((x < y || isNaN(y)) ? -1 : ((x > y || isNaN(x)) ? 1 : 0)); 
}; 
jQuery.fn.dataTableExt.oSort['num-html-desc'] = function(a,b) { 
    var x = a.replace(/<.*?>/g, ""); 
    var y = b.replace(/<.*?>/g, ""); 
    x = parseInt(x); 
    y = parseInt(y); 
    return ((x < y || isNaN(x)) ? 1 : ((x > y || isNaN(y)) ? -1 : 0)); 
}; 

삭제 2. 종류의 입력하는 동안 종류의

1.Define 사용자 정의 유형 초기화 가능한 데이터 테이블,

$(".fooTable").dataTable({ 
    "aoColumns": [ 
     {"sType" : "num-html" }] 
}); 
관련 문제