[JavaScript] Datensätze auswählen & ändern

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [JavaScript] Datensätze auswählen & ändern

    Hallo liebe Leute!

    Auf meiner Seite gibt es viele Datensätze, die in tabellarischer Form ausgegeben werden. Hier ist ein Beispielcode:

    HTML-Code:
    <table><tr>
    <th>Sprache</th>
    <th>Abk.</th>
    <th>Alternative Sprachen</th>
    <th>Aktionen</th>
    </tr>
    <tr>
    <td>English</td>
    <td>en</td>
    <td>keine</td>
    <td><input value="Bearbeiten" class="languagesubmit" type="submit"></td>
    </tr>
    <tr>
    <td>Deutsch</td>
    <td>de</td>
    <td>keine</td>
    <td><input value="Bearbeiten" class="languagesubmit" type="submit"></td>
    </tr>
    <tr>
    <td><input style="width: 95px;" type="text"></td>
    <td><input style="width: 60px;" type="text"></td>
    <td><input style="width: 180px;" type="text"></td>
    <td><input value="Hinzufügen" class="languagesubmit" type="submit"></td>
    </tr>
    </table>
    Wenn man auf den "Bearbeiten"-Button in der rechten Spalte klickt, dann sollten die Inhalte der jeweiligen Tabelle in ein Eingabefeld verwandelt werden. Dafür brauche ich wohl JavaScript. Mein Problem ist aber, dass ich nicht weiß, wie ich eine Funktion programmieren kann, die nur die Inhalte der einen Zeile anwählt. Ich wäre euch für alle Hinweise und Lösungsansätze wirklich sehr dankbar!

    Was ich mir auch gedacht habe, ist, dass man ja dann auch alle anderen Bearbeiten-Buttons unsichtbar machen muss, damit nur so viele Reihen auf einmal bearbeitet werden (also eine), wie dann auch gespeichert werden (wenn man auf den Submit-Button klickt). Der Submit-Button sollte übrigens dann auch seine Aufschrift von "Bearbeiten" zu "Speichern" ändern.

    Übrigens ist mir klar, dass es mit AJAX noch eleganter geht und auch benutzerfreundlicher wäre, aber vorerst habe ich noch keine AJAX-Implementierung geplant. (Falls da aber auch jemand schon was dazuschreiben will, kann er das gerne machen. Ich werde sicher später darauf zurückkommen.)

  • #2
    Zuerst sollte die Tabelle mal eine eindeutige ID bekommen. Dann kannst du zum Beispiel mit
    PHP-Code:
    var trs document.getElementById('id').getElementsByTagName('tr'); 
    dir alle Zeilen holen. Dann musst du in einer Schleife per
    PHP-Code:
    trs[i].firstChild.nodeType 
    prüfen ob es sich um Text handelt. Dann hängst du über das DOM die gewünschten Textfelder mit dem entsprechenden Inhalt ein. Da das Thema etwas komplexer ist, empfehle ich dir das hier und das hier.

    Gruß
    Peter
    Zuletzt geändert von Kropff; 01.11.2009, 15:52.
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Du brauchst allerdings nicht meinen, dass du mit JS etwas auf dem Server ändern kannst! Das wirkt sich nur auf den Browser aus und ansonsten brauchst du AJAX oder JS der saubere Formulare verfasst, die der User versenden kann. Ist deine Entscheidung :-D !

      - Philipp
      Find Parties?
      Partysuche

      Kommentar


      • #4
        Zitat von Flip7 Beitrag anzeigen
        Du brauchst allerdings nicht meinen, dass du mit JS etwas auf dem Server ändern kannst!
        Ich glaube nicht, dass der TO dieser irrigen Annahme verfallen war:

        Zitat von PHP-Master07 Beitrag anzeigen
        Der Submit-Button sollte übrigens dann auch seine Aufschrift von "Bearbeiten" zu "Speichern" ändern.
        [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
        Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
        Super, danke!
        [/COLOR]

        Kommentar

        Lädt...
        X