2013-06-02 34 views
1

這將按字母順序排序,但在a之前b等。我想要以[開頭的任何內容,然後是以.開頭的任何內容。如何修改表格分類的比較功能

如何做到這一點?

function ts_sort_default(a,b) { 
    aa = ts_getInnerText(a.cells[SORT_COLUMN_INDEX]); 
    bb = ts_getInnerText(b.cells[SORT_COLUMN_INDEX]); 
    if (aa==bb) { 
    return 0; 
    } 
    if (aa<bb) { 
    return -1; 
    } 
    return 1; 
} 

回答

2

只需添加這些行

function ts_sort_default(a,b) { 
    aa = ts_getInnerText(a.cells[SORT_COLUMN_INDEX]); 
    bb = ts_getInnerText(b.cells[SORT_COLUMN_INDEX]); 

//// 
if(aa.substr(0,1) == '[') { 
     if(bb.substr(0,1) == '[') {return 0;} else {return 1;}  
} 

if(bb.substr(0,1) == '[') { 
    return -1; // aa is known not to be "["  
} 

if(aa.substr(0,1) == '.') { 
    if(bb.substr(0,1) == '.') {return 0;} else {return 1;}  
} 

if(bb.substr(0,1) == '.') { 
    return -1;  
} 

//// 

if (aa==bb) { 
    return 0; 
    } 
    if (aa<bb) { 
    return -1; 
    } 
    return 1; 
} 

(我倒沒爲JS,所以雙檢語法。)

+0

嗯,不能似乎得到它的工作,仍在整理像往常一樣,生病繼續嘗試修復它,並看到 – user1166981

+0

@ user1166981感謝您接受答案。你寫的它沒有開箱即用 - 你是否適應了一些東西?我會將其整合到我的開發人員的答案中。 –

+0

哦,對不起,實際上沒有其他的功能導致它不起作用,你的代碼完美地工作。謝謝 – user1166981