Reaktion auf Benutzereingaben

bei mir erzielt es immernoch den selben Effekt....

Mit diesem Script bin ich bis jetzt am weitesten gekommen. Allerdings wir hier hier immer nur das Textfeld eingefügt und immer das neuste zuoberst...

Javascript:
<script type="text/javascript">
var i=1;
function NeuesFeld()
{
i=i+1;
 
var row = document.getElementById("form").insertRow( document.getElementById("form").rowIndex+i+1 );
var cell = row.insertCell( 0 );
 
var text = document.createTextNode( 'Begleitperson ' + (i) );
cell.appendChild( text );
 
cell = row.insertCell( 1 );
 
var input = document.createElement( 'input' );
input.type = 'text';
input.name = 'nummer[]';
input.size = 38;
cell.appendChild( input );
 
}
</script>
 
Wie geschrieben, bei mir klappt es damit wie es soll.

Wenn ich jetzt noch verstehen würde was du mit "...Formatierung des Textes, an einem anderen Ort ändert sich..." und "...bei mir erzielt es immer noch den selben Effekt..." meinst könnte ich mich vielleicht trotzdem auf die Fehlersuche machen.

Hast du zum Testen das Javascript und den HTML-Code übernommen oder nur das Script kopiert? Dann kann es nicht klappen!
 
Hier sonst die ganze Page: *
Es handelt sich um das Feld "Begleitperson". Dort sollte immer wieder ein neues erscheinen.
 
Zuletzt bearbeitet:
Jetzt komme ich mit.
Du hattest oben nur eine Tabelle mit 3 Textfeldern. Ich habe es so verstanden das immer nach dem Ausfüllen das jeweils nächste Feld erscheinen soll.
 
Ach so. Nein es sollte einfach jedes mal wenn eine Begleitperson eingetragen wurde ein Feld für eine Nächste erscheinen, damit man belieg viele eintragen kann.
(Die genaue Abfrage für den Eintrag ist nicht so wichtig, das bekomme ich hin, das wichtige ist das erstellen der Textfelder)
 
Neuer Tag, neuer Versuch:

HTML:
<script language="javascript" type="text/javascript">
var zeile = 3;
var person = 1;

function neu() {

if (document.getElementById(person).value.length == 0) {
    alert("Bitte oben Wert eingeben!")
} else {


zeile++;
person++;

var TR = document.getElementById("tabelle").insertRow(zeile);

var TD1 = document.createElement("td");
var TD1text = document.createTextNode("Begleitperson " + person + ":");
TD1.appendChild(TD1text);

var TD2 = document.createElement("td");

TR.appendChild(TD1);
TR.appendChild(TD2);
TD2.innerHTML = "<input type='text' size='30' id='" +person +"' name='person[]'>";
}
}

</script>

<form action="index.php?sid=carsubmit" method="post">
<table id="tabelle" cellspacing="1" cellpadding="0" border="0" width="100%" align="center" valign="top" style="font-size: 1em; margin: 20px;">
    <tr>
        <td align="left" valign="middle" width="20%">Nachname*:</td>
        <td align="left" valign="middle" width="80%"><input type="text" size="30" name="lastname"></td>
    </tr>
    <tr>
        <td align="left" valign="middle" width="20%">Vorname*:</td>
        <td align="left" valign="middle" width="80%"><input type="text" size="30" name="prename"></td>
    </tr>
    <tr>
        <td align="left" valign="middle" width="20%">Adresse*:</td>
        <td align="left" valign="middle" width="80%"><input type="text" size="30" name="address"></td>
    </tr>
    <tr>
        <td align="left" valign="middle" width="20%">Begleitperson 1:</td>
        <td align="left" valign="middle" width="80%"><input type="text" size="30" id="1" name="person[]"></td>
    </tr>
        <tr>
        <td align="left" valign="middle" width="20%">&nbsp;</td>
        <td align="left" valign="middle" width="80%"><a href="#" onclick="neu();">Begleitperson hinzuf&uuml;gen</a></td>
    </tr>
</table>
</form>
 
Sehr gut! Das schein auf den ersten Versuch zu funktionieren.
Vielen Dank schon mal. Werde das dann noch richtig einbetten und anpassen.
Hoffe es geht dann immer noch. ;)

Forumlar-Auswertung kann ich dann einfach in einer for-Schleife den Array begleit[] auslesen!?
 
Forumlar-Auswertung kann ich dann einfach in einer for-Schleife den Array begleit[] auslesen!?

Ja genau. Du musst dann aber noch prüfen ob wirklich alle Felder des Arrays mit gültigen MWerten gefüllt sind. Das nachträgliche "leeren" eines der zuvor beschriebenen Textfelder wird mit dem Javascript nämlich nicht geprüft.
 
Zurück