2013-07-15 21 views
1

我閱讀了關於爲tablesorter編寫自定義分析器的文檔。但我無法想象如何使它在高爾夫比賽中正常工作。TableSorter jQuery插件高爾夫分數排序

我想排序像這樣的分數: -11 -10 -9 -8 -7 -1 ë

我只是可以不能像那樣工作。有誰知道如何使它從正數2位數字到1位數字轉換爲字母E而不是0,並且正數一位數字然後是正數2位數字?

我想這沒有成功:

// add parser through the tablesorter addParser method 
$.tablesorter.addParser({ 
    // set a unique id 
    id: 'golfscores', 
    is: function(s) { 
     // return false so this parser is not auto detected 
     return false; 
    }, 
    format: function(s) { 
     // format your data for normalization 
     return s.toLowerCase().replace(/E/,0); 
    }, 
    // set type, either numeric or text 
    type: 'numeric' 
}); 



$(document).ready(function() { 
// call the tablesorter plugin 
$("#myTable").tablesorter({ 
    headers: {0:{sorter:false},1:{sorter:'golfscores'}}, 
    widgets: ['zebra'] 
}); 

如果有幫助,爲表內的行的標記是這樣的:

<tr> 
       <td align="center"> 
       <select name="ddl_slots_11052" class="ddl_slots" id="ddl_slots_11052"> 
        <option value="">-</option> 

        <option value="1" selected="selected">1</option> 

        <option value="2" >2</option> 

        <option value="3" >3</option> 

        <option value="4" >4</option> 

        <option value="5" >5</option> 

        <option value="6" >6</option> 

        <option value="7" >7</option> 

        <option value="8" >8</option> 

       </select></td> 



      <td align="center"> 
        <strong>-3</strong> 
        </td> 
       <td align="left">Larry</td> 
       <td align="left">Larry</td> 
       <td align="left">Mize</td> 

       <td align="center"> 
            F 
       </td> 
       <td align="center">-3</td> 
       </tr> 
      <input type="hidden" name="score_11052" value="-3" /> 

      <tr> 
       <td align="center"> 
       <select name="ddl_slots_10981" class="ddl_slots" id="ddl_slots_10981"> 
        <option value="">-</option> 

        <option value="1" >1</option> 

        <option value="2" selected="selected">2</option> 

        <option value="3" >3</option> 

        <option value="4" >4</option> 

        <option value="5" >5</option> 

        <option value="6" >6</option> 

        <option value="7" >7</option> 

        <option value="8" >8</option> 

       </select></td> 



      <td align="center"> 
        <strong>2</strong> 
        </td> 
       <td align="left">Jerry</td> 
       <td align="left">Jerry</td> 
       <td align="left">Pate</td> 

       <td align="center"> 
            F 
       </td> 
       <td align="center">2</td> 
       </tr> 
+0

您只需要一個自定義排序功能,將「E」轉換爲0 ,然後對Asc進行排序。不要忘記將你的字符串轉換爲整數。你有什麼嘗試? –

+0

我試過這個沒有成功: – pixelwiz

+0

那麼,你嘗試了什麼?爲什麼它沒有工作?我們不會爲你從頭開始構建它。 –

回答

1

你應該不是返回的一個數文本,請嘗試將格式功能更改爲:

format: function(s) { 
    // Any letters will return as zero 
    return parseFloat(s) || 0; 
},