用于高度和分数的jQuery Tablesorter解析器

时间:2012-02-26 08:56:46

标签: jquery parsing tablesorter

过去几天我一直在使用Tablesorter,但找不到任何帮助解析器的高度(5'11“,6'2”等)或分数(10 3/4,10 5) / 8等)我正在处理的页面在这里:http://tinyurl.com/89ewthl

对于大多数列而言,它排序很好,但我遇到了“Broad Jump”,“Arm”和“Hand”列的问题。该剧本不承认10'11“更大/更长于10'4”;相反,它将它分组在10'1“之上,这是有道理的。我看到一个帖子建议以英寸输入结果(例如,10'11”= 131,10'1“= 121,10'4” = 124)并使用解析器将其转换为X'Y“格式,但我无法使其工作。

对于分数,我按升序使用1/8到7/8:

⅛ ¼ ⅜ ½ ⅝ ¾ and ⅞

Tablesorter无法识别这些HTML位,因此最终结果会根据前面的整数进行加扰。

我对Javascript不是很好,所以编写解析器对我来说会有问题。我将非常感谢您提供的任何帮助!

2 个答案:

答案 0 :(得分:1)

哇,这需要一些工作!但基本上你只需要一个解析器将所有表格单元格内容转换为实际值。

我创建了一个demo here ...它看起来非常可靠,但您需要确保表格单元格不包含除上面分享的分数或小数{{1}之外的任何无关字符}或转发斜杠.

这是经过测试的HTML

/

以及解析器和tablesorter初始化代码:

<table class="tablesorter">
  <thead>
    <tr>
      <th>Distance</th>
    </tr>
  </thead>
  <tbody>

    <tr><td>3'</td></tr>
    <tr><td>11"</td></tr>
    <tr><td>5'</td></tr>
    <tr><td>3"</td></tr>
    <tr><td>&frac12;"</td></tr>

    <tr><td>5' 11"</td></tr>
    <tr><td>10' 11"</td></tr>
    <tr><td>10' 1"</td></tr>
    <tr><td>10' 4"</td></tr>
    <tr><td>5' 9"</td></tr>

    <tr><td>5' 3/4"</td></tr>
    <tr><td>5' 5/8"</td></tr>
    <tr><td>5' 3 1/2"</td></tr>

    <tr><td>10' 3&#8539;"</td></tr>

    <tr><td>10' 2&#8540;"</td></tr>
    <tr><td>10' 3&#8541;"</td></tr>
    <tr><td>10' 2&#8542;"</td></tr>
    <tr><td>5' 3&frac14;"</td></tr>
    <tr><td>5    '   2   &frac12;        "</td></tr>
    <tr><td>10' 2&frac34;"</td></tr>

    <tr><td>5' 2 &frac12;"</td></tr>
    <tr><td>5' 2.5"</td></tr>

    <tr><td>5' 2 1/2"</td></tr>

    <tr><td> 10  ' 1   "</td></tr>

  </tbody>
</table>

答案 1 :(得分:1)

我在寻找其他东西时遇到了这个问题,但我认为如果有人需要,我会为高度排序问题添加自己的解决方案。

http://lithostech.com/2008/08/adding-a-jquery-table-sorter-parser/

我用它来分析http://blitz.fresnobeehive.com

的高中足球运动员的高度