mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 28.03.2024 14:26 Benutzername: Passwort: Auto-Login

Thema: Per JavaScript Submit Button für Form generieren lassen vom 28.10.2013


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> Per JavaScript Submit Button für Form generieren lassen
Autor Nachricht
dondom
Threadersteller

Dabei seit: 28.10.2013
Ort: -
Alter: -
Geschlecht: -
Verfasst Mo 28.10.2013 15:58
Titel

Per JavaScript Submit Button für Form generieren lassen

Antworten mit Zitat Zum Seitenanfang

Hallöchen,
ich lese per PHP Script aus einer Datenbank ein paar Datensätze raus, und lasse diese in einer Tabelle anzeigen.
Hinter jede Zeile wird dann ein Edit Button gesetzt. Klickt man diesen Edit Button an,
werden die Zellen der Tabelle zu Inputs mit dem Value, des vorherigem Inhalts der Zelle.
Außerdem wird der Edit Button zu einem Speichern Button, welcher dann eine Form abschicken soll
zu einem anderem PHP Script. Die Form liegt immer um eine Zeile der Tabelle.

Leider passiert nichts, wenn man den Speichern Button anklickt.

Das ist einfach die Ausgabe der Daten.


So sieht es aus, wenn man Edit geklickt hat. Edit ruft ein JavaScript auf.
Der Speichern Button soll jetzt die Form (Die Inputs) absenden.




Hier ist mal Code:
Php-Code: Die ausgabe der Daten
Code:


            while($row=mysql_fetch_row($result))
            {
               echo "<form method='post' action='mitglied_bearbeiten.php' >\n";
               echo "<tr>\n";
               foreach($row as $i)
               {
                  echo "<td id='$lauf'>$i</td>\n";
                  $lauf++;
               }
               echo "<td id='$lauf'><input type='button' name='$lauf' value='Edit' onClick='edit($lauf)' /></td>";
               echo "</tr>\n";
               echo "</form>\n";
               $lauf++;
            }
            echo "</table>";
            mysql_close($dbh);
            


JavaScript - Generiert die Inputs und den Speichern Button
Code:

function edit(x)
   {
      var y=x;
      x--;
      var td5=document.getElementById(x);
      var td5_v=td5.innerHTML;
      x--;
      var td4=document.getElementById(x);
      var td4_v=td4.innerHTML;
      x--;
      var td3=document.getElementById(x);
      var td3_v=td3.innerHTML;
      x--;
      var td2=document.getElementById(x);
      var td2_v=td2.innerHTML;
      x--;
      var td1=document.getElementById(x);
      var td1_v=td1.innerHTML;
      x--;
      var td0=document.getElementById(x);
      var td0_v=td0.innerHTML;
      
      td0.innerHTML="<input type='text' name='name' value="+td0_v+" />";
      td1.innerHTML="<input type='text' name='vorname' value="+td1_v+" />";
      td2.innerHTML="<input type='text' name='eintrittsdatum' value="+td2_v+" />";
      td3.innerHTML="<input type='text' name='stimme' value="+td3_v+" />";
      td4.innerHTML="<input type='text' name='position' value="+td4_v+" />";
      td5.innerHTML="<input type='text' name='aktiv' value="+td5_v+" />";
      
      var button=document.getElementById(y);
      var td0_v=button.innerHTML;
      button.innerHTML="<input type='submit' name='"+y+"' value='Speichern'  />";
   }



Weiß leider nicht, warum der Speichern Button nichts macht.
Hoffe mir kann jemand helfen.
  View user's profile Private Nachricht senden
qualidat

Dabei seit: 14.09.2006
Ort: Eichwalde bei Berlin
Alter: 63
Geschlecht: Männlich
Verfasst Mo 28.10.2013 19:37
Titel

Antworten mit Zitat Zum Seitenanfang

Ich finde den Programmierstil ziemlich krank ...

Ein vernünftigerer Stil wäre es m.E., an den Buttons die Eigenschaft value mittels JS-Funktion zu ändern (statt neue zu erzeugen), in einem Array die Stati der Tabellenfelder zu führen und und mit dem Event onclick eine Funktion mit entsprechenden Parametern aufzurufen (z.B. Feldnummer und Edit oder Submit).
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
pantonine

Dabei seit: 03.03.2011
Ort: gehen Sie bitte weiter…
Alter: -
Geschlecht: -
Verfasst Mo 28.10.2013 20:33
Titel

Antworten mit Zitat Zum Seitenanfang

Zitat:
x--;
var td5=document.getElementById(x);
var td5_v=td5.innerHTML;
x--;
var td4=document.getElementById(x);
var td4_v=td4.innerHTML;
x--;
var td3=document.getElementById(x);
var td3_v=td3.innerHTML;
x--;
var td2=document.getElementById(x);
var td2_v=td2.innerHTML;
x--;
var td1=document.getElementById(x);
var td1_v=td1.innerHTML;
x--;
var td0=document.getElementById(x);
var td0_v=td0.innerHTML;
Ehrlich jetz? * Ööhm... ja? *

Ich dache in Javascript wäre die Schleife schon erfunden worden… *Whaazzzz uppp?*
  View user's profile Private Nachricht senden
fyll

Dabei seit: 20.09.2003
Ort: Augsburg
Alter: 39
Geschlecht: Männlich
Verfasst Di 29.10.2013 09:01
Titel

Antworten mit Zitat Zum Seitenanfang

Naja das ist relativ einfach erklärt:
Man darf kein <form/> in eine <tr/> setzen (oder zwischen table und tr). Dass dir das dein Editor nicht schon sagt, ist schon komisch..
Abhängig von deinem Doctype wird der Browser also das Form an dieser Stelle sofort wieder zumachen - die Inputs liegen dann halt nich im Form.

Du musst halt ein einzelnes Form erstellen und das als parent der table setzen.
Musst dann halt noch in den <input name=""> die ID der Row der Tabelle mitgeben und dann das mit PHP nach dem submit auseinander-parsen.


//edit: .. Oder du verzichtest auf <table/>s *zwinker*


Zuletzt bearbeitet von fyll am Di 29.10.2013 09:02, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden
 
Ähnliche Themen Form Submit trotz Javascript-Check in einer PHP datei
[JavaScript] Submit Button "verlinken"
[html/css] Submit-Button ohne Button
Submit Button to Textlink
IE stellt submit button falsch dar :(
Submit Button im Formular beschriften
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.