Matthias: Automatische Tabellen erzeugen

Hallo zusammen,

ich habe aktuell ein Problem.
Ich will per Javascript 3 eingaben von den benutzer erfordern und die 3 eingaben sollen an die Tabelle angehängt werden. Also wenn der Benutzer 3 eingaben eingibt wenn der benutzer auf "Fertig!" anklickt soll eine tabelle erzeugt werden und die eingaben an die tabelle eingefügt werden.

z.B.

<html>
<head>
<title>Aufgabe 2</title>
<script language="JavaScript" type="text/javascript">
<!--

function Start()
{
  var A = document.Form1.Eingabe1.value;
  var B = document.Form1.Eingabe2.value;
  var C = document.Form1.Eingabe3.value;

var zeile   = document.createTextNode("tr");
  var tdeins  = document.createTextNode("td");
  var tdzwei  = document.createTextNode("td");
  var tddrei  = document.createTextNode("td");
  var tabelle = document.getElementById("tab3");

document.getElementById("table").appendChild.appendData("tdeins");
  document.getElementById("tab3").appendChild.appendData(tdzwei);
  document.getElementById("tab3").appendChild.appendData(tddrei);

zeile.appendChild(tdeins);
  zeile.appendChild(tdzwei);
  zeile.appendChild(tddrei);

tabelle.appendChild(zeile);
}

function zeigeDatum()
{
  var date = new Date();
  var tag  = date.getDate();
  var mona = date.getMonth() + 1;
  var jahr = date.getYear();

document.Form1.ausgabeDatum.value =
    tag + "-" + mona + "-" + jahr;
}

function Datum()
{
  zeigeDatum();
}

// -->
</script>

</head>
<body onLoad="Datum()">
<form name="Form1" >
 <tr>Heute ist der: </tr>
 <input type="text" name="ausgabeDatum" size=10><br>
 <tr>Eingaben</tr>
 A: <input type="text" name="Eingabe1" size="13">
 B: <input type="text" name="Eingabe2" size="13">
 C: <input type="text" name="Eingabe3" size="13">
 <input type="button" value="Fertig!" onClick="Start();">
</form>

<table id="table" border="1" width="30%">
  <tr>
    <td id="zelle1" width="1%" >&nbsp;</td>
    <td id="zelle2" width="1%" >&nbsp;</td>
    <td id="zelle3" width="1%" >&nbsp;</td>
  </tr>
  <tr>
    <td id="zelle4" width="1%" >&nbsp;</td>
    <td id="zelle5" width="1%" >&nbsp;</td>
    <td id="zelle6" width="1%" >&nbsp;</td>
  </tr>
</table>

</body>
</html>

nun gibt es ein fehler:

zeile.appendChild(tdeins);

ich kann leider dieses fehler nicht beseitigen. Kann mir hier evtl jemand helfen?

Danke schonmal im Voraus

Gruß Matthias

nach obennach unten

  1. Hallo,

    deine Aufgabenstellung ist unklar.

    Ich will per Javascript 3 eingaben von den benutzer erfordern und die 3 eingaben sollen an die Tabelle angehängt werden. Also wenn der Benutzer 3 eingaben eingibt wenn der benutzer auf "Fertig!" anklickt soll eine tabelle erzeugt werden und die eingaben an die tabelle eingefügt werden.

    1. Du willst eine neue Tabelle erzeugen.
    2a. Du willst diese neue Tabelle an eine vorhandene anhängen.
    2b. Du willst die Eingaben zusätzlich an die vorhandene anhängen.

    nun gibt es ein fehler:

    zeile.appendChild(tdeins);

    Das ist eine Codezeile, wieso ein Fehler?

    Kalle

  2. Hallo Matthias,

    var zeile   = document.createTextNode("tr");
      var tdeins  = document.createTextNode("td");
      var tdzwei  = document.createTextNode("td");
      var tddrei  = document.createTextNode("td");
      var tabelle = document.getElementById("tab3");

    wenn du Tabellenelemente erzeugen willst, warum erzeugst du dann Textknoten? Ich glaube, du suchst http://de.selfhtml.org/javascript/objekte/document.htm#create_element@title=createElement. Und bedenke, eine Tabelle hat folgenden Aufbau:

    <table>  
     <tbody>  
      <tr>  
       <td>  
        ...  
       </td>  
       ...  
      </tr>  
      ...  
     </tbody>  
    </table>
    

    Also den tbody nicht vergessen.

    Gruß, Jürgen

  3. var zeile   = document.createTextNode("tr");

    dies erzeugt einen Textknoten mit dem Text "tr".

    Ich vermute du meinst aber:

    var zeile   = http://de.selfhtml.org/javascript/objekte/document.htm#create_element@title=document.createElement("tr")