der henry: Webseite in Webseite

Hallo,

ich habe eine Webseite die mir Inhalte einer Datenbank anzeigt. Jetzt möchte ich beim "Klick" auf einzelne Felder, oder auf die komplette Zeile der Tabelle eine "Eingabe" (2.Webseite) öffnen, bei der ich die Änderung des Datenbank-Records eingeben kann. Nach dem speichern soll der geänderte Wert wieder an die 1. Webseite übergeben werden. So meine Idee .... 😉

Wie könnte man so etwas lösen, msgBox reicht nicht aus ???

Danke der Henry

  1. Moin Henry,

    Jetzt möchte ich beim "Klick" auf einzelne Felder, oder auf die komplette Zeile der Tabelle eine "Eingabe" (2.Webseite) öffnen, bei der ich die Änderung des Datenbank-Records eingeben kann. Nach dem speichern soll der geänderte Wert wieder an die 1. Webseite übergeben werden.

    Wie könnte man so etwas lösen, msgBox reicht nicht aus ???

    der einfachste Ansatz wäre:

    1. Anzeige der Daten in einer Tabelle mit button zum Ändern.
    2. Beim Klick auf einen Button wird die Seite zum Ändern aufgerufen.
    3. Beim Absenden des form wird nach der Verarbeit auf Seite 1 weitergeleitet.

    Das kannst du mit einer serverseitigen Technik deiner Wahl realisieren.

    Viele Grüße
    Robert

  2. Hallo Henry,

    eine serverseitige Lösung hat Robert skizziert. Mit den üblichen Nachteilen wie Verlust der Scrollposition. Sie hat dafür den Vorteil, dass dein Client von Fachlogik frei bleibt.

    Aber man könnte...

    • mit dem <dialog> Element ein Popup-Form machen. Popup-Forms haben die nette Eigenschaft, dass sie modal sein können und die Submit-Buttons darin den Dialog schließen. Du kannst dann die Formular-Eingaben einfach in die Zeile zurückübertragen.

    • mit window.open ein neues Fenster öffnen und das Ergebnis der Änderung mit postMessage an das Ursprungsfenster zurückschicken. Ich müsste aber in der MDN selbst erstmal nachstöbern, was da alles zu beachten ist.

    Rolf

    --
    sumpsi - posui - obstruxi
    1. Hallo Rolf,

      • mit window.open ein neues Fenster öffnen

      das ist aufgrund der weitreichenden Einschränkungen durch die Browsereinstellungen ein Glücksspiel. Im besten Fall funktioniert window.open() und öffnet ein neues Browser-Tab, was aber im beschriebenen Szenario auch blöd aussieht. Ebenso ist aber möglich, dass der Browser das Popup komplett blockiert.

      Live long and pros healthy,
       Martin

      --
      Bei Erwärmung steigt das Thermometer, bei Erkältung singt es.
    2. Moin Rolf,

      eine serverseitige Lösung hat Robert skizziert. Mit den üblichen Nachteilen wie Verlust der Scrollposition. Sie hat dafür den Vorteil, dass dein Client von Fachlogik frei bleibt.

      ich muss die Scrollposition nicht verlieren, wenn ich Fragment-Identifier im action-Attribut verwende 😉

      Viele Grüße
      Robert