Passi: Tabellenreihen löschen

Hallo Leute, ich habe mal eine Kleine Tabelle Programmiert, wo man auf Knopfdruch eine Zeile hinzufügt, aber ich möchte wenn man auf ein Bild was in jeder Zeile hinzugefügt wird, klickt, dass dann diese Zeile entfernt wird. Danke schonmal um vorraus...

schaut euch an was ich meine: http://pprogramme.funpic.de/html/website11.html

Ich habe ersteinmal so angefangen...

  
function remove_row(){  
document.getElementById("t1").deleteRow(0);  
}  

Das Bilderabrufen funktioniert leider auch nicht, aber das ist ja ersteinmal nicht so wichtig...

aber fals ihr mir da helfen könnt...

  
td3.innerHTML = "<img src='http://pprogramme.funpic.de/bilder/loeschen.png' onclick='remove_row()'>";  

Die datei gibt es, aber er ruft sie nicht ab...

Doch die erste Frage ist erstmal wichtiger...

LG

Passi

  1. Also die Bilderabfrage funktioniert jetzt einwand frei, ich hatte nur eine Poblem mit meinem FTP Client, der das Update der Website nicht hochgeladen hatte...

    Für das andere Problem habe ich leider noch keine Lösung gefunden...

    LG

    Passi

  2. Hallo Leute, ich habe mal eine Kleine Tabelle Programmiert, wo man auf Knopfdruch eine Zeile hinzufügt, aber ich möchte wenn man auf ein Bild was in jeder Zeile hinzugefügt wird, klickt, dass dann diese Zeile entfernt wird. Danke schonmal um vorraus...

    function remove_row(){
    document.getElementById("t1").deleteRow(0);
    }

      
    Ich weiss nicht, woher du die Methode deleteRow hast, üblich ist sie jedenfalls nicht. Schau lieber nochmal, was [Elementknoten anbieten](https://developer.mozilla.org/de/docs/DOM/Node).  
    
    
    1. Meine Herren,

      Ich weiss nicht, woher du die Methode deleteRow hast, üblich ist sie jedenfalls nicht. Schau lieber nochmal, was Elementknoten anbieten.

      Ein Node ist der in der DOM-Abstraktions-Hierarchie ganz weit oben angesiedelt. Davon erben zum Beispiel Element oder Document. Und Element vererbt weiter an TableElement und genau da gibt es die Methode deleteRow.

  3. Meine Herren,

    document.getElementById("t1").deleteRow(0);
    }

      
    Damit löschst du immer die erste Zeile in Tabelle. Du möchtest aber immer die i-te Zeile löschen, wobei i der Index der Zeile ist, auf die der User geklickt hat.
    
    1. Tach!

      document.getElementById("t1").deleteRow(0);

      
      > Damit löschst du immer die erste Zeile in Tabelle. Du möchtest aber immer die i-te Zeile löschen, wobei i der Index der Zeile ist, auf die der User geklickt hat.  
        
      Wobei man auch vom angeklickten Element (this) im DOM aufsteigend die Tabellenzeile suchen könnte und deren Elternelement ein removeChild(dieZeile) ausführen lassen kann. So muss man weder ermitteln, die wievielte Zeile man ist noch einen Zähler beim Erstellen der Zeilen mitlaufen lassen.  
        
        
      dedlfix.
      
  4. Danke für die schnellen antworten... guckt es euch doch mal hier an, ich möchte jetzt noch die Punkte addiren und unten rechts ausgeben, bislang habe ich nur die aus dem zweiten textfeld ausgelesen und dazu addiert, aber wenn man dort einfach mal nichts addiert ist ja klaro, dass dann NaN rauskommt, und das will ja keiner, denn dann wäre ja alles fürn arsch...

    Fals noch jemand antwortet bedanke ich micht schonmal ;-)

    --
    LG
    Passi
    1. Om nah hoo pez nyeetz, Passi!

      ich möchte jetzt noch die Punkte addiren und unten rechts ausgeben, bislang habe ich nur die aus dem zweiten textfeld ausgelesen und dazu addiert, aber wenn man dort einfach mal nichts addiert ist ja klaro, dass dann NaN rauskommt, und das will ja keiner,

      Pseudocode

      wenn Textfeld.Inhalt leer ist  
          dann setze Textfeld.Inhalt auf Null
      

      Und schon funktioniert deine Berechnung.

      Es gibt auch andere Möglichkeiten:

      wenn Textfeld.Inhalt nicht leer ist  
          dann          führe die Berechnung aus  
          anderenfalls  gib eine Fehlermeldung aus
      

      Matthias

      --
      Der Unterschied zwischen Java und JavaScript ist größer als der zwischen Müll und Müllerstochter.