tablesorter.js表格排序使用方法(支援中文排序),tablesorter中文排序

來源:互聯網
上載者:User

tablesorter.js表格排序使用方法(支援中文排序),tablesorter中文排序

最近,因為項目需要,對錶格排序做了一下摸索,整理如下:

1. 首先,可從官網下載tablesorter.js,但並不支援中文的排序,對其源碼進行修改:

部分源碼:

function sortText(a, b) {  return ((a < b) ? -1 : ((a > b) ? 1 : 0));};function sortTextDesc(a, b) {  return ((b < a) ? -1 : ((b > a) ? 1 : 0));};

修改後:

function sortText(a,b) {    return a.localeCompare(b);  };  function sortTextDesc(a,b) {    return b.localeCompare(a);  };

修改完之後的js可支援中文的排序。

2.建立一個表格,格式如下:

<table>  <thead>    <tr><th></th></tr>  </thead>  <tr><td></td></tr></table>
<html><head>  <title>jquery.tablesorter</title>  <script language="JavaScript" type="text/javascript" src="jquery-1.3.2.min.js"></script>  <script type="text/javascript" src="/manage/plugin/tablesorter/tablesorter.js"></script>  <link rel="stylesheet" href="/manage/plugin/tablesorter/blue/style.css type=" rel="external nofollow" text/css" />  <script type="text/javascript">    $("#mytable").tablesorter();  </script></head><body><table id="mytable" border="1" class="tablesorter">  <thead>    <tr>      <th class="header">First Name</th>         <th class="header">Last Name</th>         <th class="header">Age</th>         <th class="header">Total</th>         <th class="header">Discount</th>         <th class="header">Date</th>      <th class="header">State</th>    </tr>  </thead>  <tr>       <td>Peter</td>       <td>Parker</td>       <td>28</td>       <td>$9.99</td>       <td>20%</td>          <td>Jul 6, 2006 8:14 AM</td>    <td>已審核</td>   </tr>     <tr>       <td>John</td>       <td>Hood</td>       <td>33</td>       <td>$19.99</td>       <td>25%</td>          <td>Dec 10, 2002 5:14 AM</td>     <td>已審核</td>     </tr>     <tr>       <td>Clark</td>       <td>Kent</td>       <td>18</td>       <td>$15.89</td>       <td>44%</td>       <td>Jan 12, 2003 11:14 AM</td>     <td>已作廢</td>     </tr>     <tr>       <td>Bruce</td>       <td>Almighty</td>       <td>45</td>       <td>$153.19</td>       <td>44%</td>          <td>Jan 18, 2001 9:12 AM</td>    <td>待審核</td>   </tr>     <tr>       <td>Bruce</td>       <td>Evans</td>       <td>22</td>       <td>$13.19</td>       <td>11%</td>       <td>Jan 18, 2007 9:12 AM</td>    <td>已生效</td>   </tr></table></body></html>

頁面顯示:

點擊表頭,就能夠排序。

註:

1).若是第五列、第六列不需要排序,代碼如下:

$("#mytable").tablesorter({headers:{4:{sorter:false},5:{sorter:false}}});

(順便需要去掉對應列的樣式)

2).若是第五列需要自訂排序方式,第六列不排序,代碼如下:

$.tablesorter.addParser({  id: "grade", //指定一個唯一的ID  is: function(s){    return false;  },  format: function(s){    return s.toLowerCase().replace(/已作廢/,1).replace(/待審核/,2).replace(/已審核/,3).replace(/已生效/,4); //將中文換成數字  },  type: "numeric" //按數值排序});$("#mytable").tablesorter({headers:{4:{sorter:"grade"},5:{sorter:false}}});

需要更多例子,可以到官網研究。

以上就是本文的全部內容,希望對大家的學習有所協助,也希望大家多多支援幫客之家。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.