st_O: Such JS Script -> Tabellen zeilen verschieben

Hallo zusammen,

wollte mal fragen ob jemand ein Javascript kennt,
mit dem es mir möglich ist Tabellen zeilen zu verschieben.

Beispiel:

<tr>
<td>1</td>
<td>nach unten</td>
</tr>
<tr>
<td>2</td>
<td>nach unten</td>
<td>nach oben</td>
</tr>
<tr>
<td>3</td>
<td>nach oben</td>
</tr>

wird zu

<tr>
<td>1</td>
<td>nach unten</td>
</tr>
<tr>
<td>3</td>
<td>nach unten</td>
<td>nach oben</td>
</tr>
<tr>
<td>2</td>
<td>nach oben</td>
</tr>

Kennt jemand so ein script?

  1. Hallo st_O,

    so ein Script kenne ich nicht. Aber mit DOM-Methoden kannst Du Tabellenfelder auslesen und zurückschreiben:

      
     var Arr=new Array();  
     var tab=document.getElementById("Id_der_Tabelle");  
     var tbdy=tab.getElementsByTagName("tbody")[0];  
     var nzeilen=tbdy.getElementsByTagName("tr").length;  
     var nspalten=tbdy.getElementsByTagName("tr")[0].getElementsByTagName("td").length;  
      
    // hin  
     for(var z=0;z<nzeilen;z++) {  
      var zeile=tbdy.getElementsByTagName("tr")[z].getElementsByTagName("td");  
      Arr[z]=new Array(nspalten);  
      for(var s=0;s<nspalten;s++)  
       Arr[z][s]=zeile[s].firstChild.nodeValue;  
     }  
      
    // und zurück:  
     for(var z=0;z<nzeilen;z++) {  
      var zeile=tbdy.getElementsByTagName("tr")[z].getElementsByTagName("td");  
      for(var s=0;s<nspalten;s++)  
       zeile[s].firstChild.nodeValue=Arr[z][s];  
     }  
    
    

    Das Beispiel ließt eine ganze Tabelle in eine Array und schreibt sie zurück. Genauso kannst Du auch einzelne Felder ändern. Sieh Dir auf jedem Fall die verwendeten Methoden an, z.B. im Javascript-Kapitel von selfhtml (http://de.selfhtml.org/javascript/objekte/document.htm).

    Gruß, Jürgen