ソートするすべてのデータが等しい場合、javascriptのリバースメソッドに問題があります。
ここに私のコードがあります:
var ascAgt = false;
function sortTableAgt() {
var tbl = document.getElementById("mytable").tBodies[0];
var store = [];
for (var i = 0, len = tbl.rows.length; i < len; i++) {
var row = tbl.rows[i];
var rowdatedata = row.cells[1].innerHTML;
store.push([rowdatedata, row]);
}
if (ascAgt) {
store.sort();
ascAgt = false;
} else {
store.sort();
store.reverse();
ascAgt = true;
}
for (var i = 0, len = store.length; i < len; i++) {
var idno = i + 1;
store[i][1].cells[0].innerHTML = idno.toString();
tbl.appendChild(store[i][1]);
} store = null;
}
サンプルデータ:
ID Name Date
1 XXXXX 2012/10/05
2 XXXXX 2012/03/16
3 XXXXX 2012/05/18
4 XXXXX 2012/05/18
名前の部分を並べ替えると、名前が等しいために何も起こらないことが必要ですが、逆の方法になると、指定されたデータが逆になります。私はここで何かを逃していますか?前もって感謝します....