Sortierung (alphabetische Reihenfolge), um leere Zellen zu ignorieren: dataTables

So wurde die Frage bereits gestelltHie, aber die Lösung funktioniert bei mir nicht (ich könnte etwas falsch machen). Ich möchte meine Tabellen in alphabetischer Reihenfolge sortieren ("type": "natural"), aber ich möchte, dass die leeren Zellen unten stehen (für desc und asc).

Ich habe die vorherige Lösung von fbas ausprobiert:

jQuery.fn.dataTableExt.oSort['mystring-asc'] = function(x,y) {
    var retVal;
    x = $.trim(x);
    y = $.trim(y);

    if (x==y) retVal= 0;
    else if (x == "" || x == " ") retVal=  1;
    else if (y == "" || y == " ") retVal=  -1;
    else if (x > y) retVal=  1;
    else retVal = -1;  // <- this was missing in version 1

    return retVal;
}
jQuery.fn.dataTableExt.oSort['mystring-desc'] = function(y,x) {
    var retVal;
    x = $.trim(x);
    y = $.trim(y);

    if (x==y) retVal= 0; 
    else if (x == "" || x == "&nbsp;") retVal=  -1;
    else if (y == "" || y == "&nbsp;") retVal=  1;
    else if (x > y) retVal=  1;
    else retVal = -1; // <- this was missing in version 1

    return retVal;
 }

Mit:

$(document).ready(function() {
    $('#classement').dataTable({
    "aoColumns": [
        null,
        null,
        { "type" : "mystring" },
        { "type" : "mystring" },
        null
    ]
    } );
} );

it einem Tisch wie| N° | Edit | Song | Singer | Url | Nur nach Lied und Sänger sortieren.

Die leeren Zellen befinden sich (wie erwartet) am unteren Rand, aber jetzt hat die Sortierung keine Logik (keine alphabetische Reihenfolge, sollte ich eine andere Eigenschaft in dataTable verwenden?).

Hat jemand eine Lösung?

Bearbeiten: Wenn wir dynamisch eine Zeile hinzufügen, wie wird die Sortierung aktualisiert?

$("#example").find('tbody')
    .append($('<tr>')
        .append($('<td>')
                .text('Boro')
            )     
    );

JsFiddle (benutze Isims)

Antworten auf die Frage(2)

Ihre Antwort auf die Frage