を動作していないTableSorterのカスタムパーサーは私のカスタムパーサーです:jQueryの - ここで
- ABC-DE-1
- ABC-DE-10 :
$.tablesorter.addParser({
id: "customParser",
is: function (stringValue) {
return false;
},
format: function (stringValue) {
var stringValueParts = stringValue.split("-");
var numericPartOfStringValue = parseInt(stringValueParts[2]);
return numericPartOfStringValue ;
},
type: 'numeric'
});
のstringValueは次のような値を持つことになります
ここでは、私はtablesorterをアップセットとカスタムソートパーサーを追加したコードです:
$(function() {
$("#dataTable").tablesorter({
headers: {
3: {
sorter: 'customParser'
}
}
});
});
私はにconsole.log(numericPartOfStringValue)を追加しましたし、数字がすべてに書き出されましたコンソールはパーサーがやっているべきことをやっているように見えます。
どうしたらいいですか?
私は私の値は以下のように文字列の数字の一部でソートしたい:
- ABC-DE-1
- ABC-DE-10
- ABC-DE-100
- ABC-DE-101
- ABC-DE-1000
実際に何が起こっていますか?
値は、この方法でソートされている:
- ABC-DE-1
- ABC-DE-10
- ABC-DE-100
- ABC-DE-1000
- ABC-DE-101
私は他に何をしようとしたのですか?
は、私は私のHTMLに次を追加しましたが、それは違いはありませんでした:
<th class="{sorter: 'CustomParser'}">
String Value Column
</th>
そして最後に:ここで
は、表のセルから値の例である:
<td>
<span class="badge">ABC-DE-1</span>
</td>
あなたはDataTableのかtablesorterを使用していますか? tablesorterを使い続けたいのであれば、デフォルトで英数字の並べ替えを使用する私の[tablesborderのfork](http://mottie.github.io/tablesorter/docs/)を試してみてください。あなたのケースに特別なパーサーは必要ありません。 – Mottie
私はページング用のデータテーブルと並べ替えのためのtablesorterの両方を使用していました。問題は、私のカスタムtablesorterパーサがデータテーブルページングで動作していないことでした。なぜ私はデータ型のソートを使用していなかったのか分かりませんので、データ型のソートを使用するようにコードを切り替えました。私はデータテーブルにカスタムパーサを実装しましたが、現在はすべて動作しています。 したがって、この質問は今や冗長です。見ていただきありがとうございます。 –