2010-12-08 5 views
2
Ich habe eine Tabelle, in die ich Daten von einem serverseitigen PHP-Skript laden, das die Tabelle als JSON für jQuery dataTables zum Rendern zurückgibt. Ich benutze dann das jQuery tableDnD plugin, um das Drag-and-Drop-Umordnen von Tabellen zu erlauben, dies erfordert, dass die Zeilen der Tabelle die ID enthalten, die der Tabellenzeile in der Datenbank entspricht, dh

Ich frage mich, wie ich erreichen kann dies unter Verwendung von Datentabellen, da ich dies nicht angeben kann.Setzen Sie eine ID auf jQuery-Tabellen, die von TableDnD-Plugin verwendet werden können

Mein derzeitiges Denken ist es, einen Rückruf auf die Daten vielleicht zu verwenden, oder tableDnD neu schreiben, um den ID-Wert aus einer Indexspalte zu lesen, hat jemand irgendwelche Ideen diesbezüglich?

Antwort

4

Der Rückruf erwies sich die Antwort sein,

$('#dataTable').dataTable({ 
    ... 
     "aoColumns" : [ 
      { sWidth:'40px' }, 
      { sWidth:'40px',sClass:'position' }, 
      ... 
      { sWidth:'3px',sClass:'handle' } 
     ], 
      ... 
     "fnRowCallback": function(nRow, aData, iDisplayIndex) { 
      $(nRow).attr("id",aData[0]); 
      return nRow; 
     }, 

die fnRowCallback mit Ich konnte das Attribut-ID der Tabellenzeile hinzufügen und dann mit der ID laden Sie es, die das erste Element der Daten war zurückgekehrt aData[0]

Ich fand, dass ich die "aoColumns" verwenden kann, um beide Breite und die Klassen 'Position' zu laden, und 'handle' benötigt für meine jQuery tableDnD.

Ich denke, ich sollte das Handbuch beim nächsten Mal ein bisschen mehr lesen!

+0

Sie sollten Ihre eigene Antwort akzeptieren, vielleicht wird es anderen Menschen in der Zukunft helfen. – davidkonrad