jquerytablesorterプラグインを使用しています
ウェブページはここにあります:http: //redbluffbullsale.com/bulls-listings
以下に定義されている複雑なtextExtraction関数があります。
var jgExtraction = function(node) {
if (node.childNodes[0].length > 0) {
return node.childNodes[0].innerHTML;
} else {
return node.innerHTML;
}
}
jQuery('#bullsTable').tablesorter({
textExtraction: 'jgExtraction',
headers: {
0 : {sorter: false},
13: {sorter: 'digit'},
14: {sorter: 'digit'}
}
});
いくつかの列(13および14)には、次の形式のデータがあります。
数字(例:0.9、2.3、4、-2、-2.5など)テキスト(文字I)と数字(I + 2.3、I-0.9、I + 1.4など)と数字付きの記号(+ 2.4、+ 3.1、+ 0.9など)
サーバー上で列データを制御しているので、それが数値または負の数の場合は<td>にダンプされますが、列データにI +、I-、または+がある場合、その列にはI +、I-、または+は、次のように<span>タグで数値から区切られます。
<td>-1.4</td>
<td>I+<span>1.6</span></td>
<td>I-<span>3.4</span></td>
<td>+<span>2.2</span></td>
jgExtractionは、スパンの子ノードがない場合はinnerHTMLを返し、存在する場合はchildNode [0](スパン)のコンテンツを返す必要があります。I+またはI-の列ではソートが機能しません。上記のURLを確認すると、何が問題になっているのかがわかります。
私は何が間違っているのですか?