人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

jQuery.TableSorterを使ったページで
降順でソートすると、頭文字でカタカナの「ヴ」がつく文字が、「ン」で始まる文字よりも一番上にソートされてしまいます。
本来なら正しいソート結果だと思うのですが、クライアントからカタカナの「ヴ」は、「ウ」と「エ」の間に配置してもらいたいとの要望でした。jQuery.TableSorter内で、分岐処理の一文を加えたいと思っております。
分かる方いらっしゃったら教えてください。宜しくお願いします。


●質問者: pet_hanakosan
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● oil999
●200ポイント

以下のパーサーを追加してください。
ここではカラム番号1に適用していますが、
実際のカラム番号に合わせてください。

$.tablesorter.addParser({
 id: 'hoge',
 is: function(s) {
 return false;
 },
 format: function(s) {
 return s.replace(/ヴ/g, 'ヴ');
 },
 type: 'string'
});

$(function() {
 $("table").tablesorter({
 headers: {
 1: {
 sorter:'hoge'
 }
 }
 });
});

質問者から

早急なご回答ありがとございます。御回答いただいたソースをjs内ではなく、html内でtablesorterの実行箇所の差し替えをしました。結果としては、処理を施したいカラム(2列目なので1)がソートしなくなりました。背景色や▼▲ボタンなど装飾部分は問題ありません。他のカラムは問題なくソートしています。ちなみにtablesorter.jsはダウンロード時のままで特に修正しておりません。他に何か考えられることはありますでしょうか??たすけてください。宜しくおねがいします!!


//<![CDATA[jQuery(function($) {$('#テーブルのID').tablesorter();});//></script>


$.tablesorter.addParser({
id:"hoge",
is:function(s){return false;},
format:function(s){
return s.replace(/ヴ/g,'ヴ');
},
type:'string'
});
$(function() {
$("#テーブルのID").tablesorter({
headers: { 1: { sorter:"hoge" }}
});
});


関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ