2016-10-05 5 views
0

In meiner App muss ich den Index des Dateneintrags in der ersten Datatable-Spalte zeigen, und es muss nach DnD funktionieren (also nehme ich an, dass die Spalte dynamisch aktualisiert werden sollte). Aber wie ist es in Webix Datatable möglich?Wie man den Index des tatsächlichen Gegenstandes im Datenpaket zeigt?

Momentan kann ich den Index manuell mit getIndexById abrufen, aber diese Methode funktioniert nicht in der Spaltenvorlage. Zum Beispiel:

/* inside the config */ 
    drag:true, 
    columns:[  
    { id:"index", template:function(obj){ 
     console.log(obj.id); 
     // doesn't work: 
     // console.log(datatable.getIdByIndex(obj.id)); 
    } }, 
    { id:"id" },  
    { 
     id:"title", fillspace:true, sort:"string"  
    } 
    ], 
    ready:function(){ 
    this.eachRow( 
     function (row){ 
     console.log(this.getIndexById(row)) // works 
     } 
    ) 
    } 
}); 

/* somewhere else */ 
console.log(datatable.getIdByIndex(4)); 

Code sample.

Ist das überhaupt möglich? Vielen Dank.

Antwort

0

Um den Index der Zeile (Dateneingabe) erhalten Sie Ihren Index Vorlage als definieren müssen:

template: function(obj){ 
    return $$("dt").getIndexById(obj.id); } 

wo „dt“ die ID Ihrer Datentabelle ist. Es ändert automatisch den Index, wenn Sie eine DnD-Operation ausführen. Überprüfen Sie außerdem das Snippet here.

+0

Oh mein, es war nur mein schrecklicher Fehler, da ich die gegenteilige Methode ausprobiert habe (/ __-;) Ich frage mich, ob ich dieses Thema löschen sollte, aber danke trotzdem! – drewney

Verwandte Themen