Vossen
Ensign
- Registriert
- Apr. 2002
- Beiträge
- 170
Hallo zusammen,
ich habe ein statisches Formular mit Datum, Startort, Zielort und weiteren Feldern.
Nun möchte ich - ähnlich wie bei google maps - Zwischenziele einfügen können. Die möchte ich gerne dynamisch einfügen.
Sprich: erst ist nur das Formular mit den statischen Feldern vorhanden und ein Button "Zwischenziel hinzufügen".
Beim Klick auf den Button soll ein weiteres Input-Field für das Zwischenziel erzeugt werden. Alternativ kann auch schon ein Zwischenziel-Feld vorhanden sein, was dann dupliziert wird, wenn es ein weiteres Zwischenziel gibt.
Ich habe hier schon ein feines Snippet gesehen, was an sich auch funktioniert.
Leider habe ich das Problem, dass sich der JS-Code das Eltern-Element, also in diesem Fall den div-Tag sucht und damit arbeitet.
Bei mir fügt sich das ganze Formular aber in mehrere divs- und span-tags. Und das ist mein Problem:
ich bekomme das JS-Snippet nicht überzeugt, das Formularfeld anzugezeigen...
Statisches Formularfeld:
versuchtes dynamisches Feld:
Funktionierender Code, der alleine wunderbar funktioniert...
Vielleicht hat einer eine Idee, wie ich das in meine Seite integrieren kann, sodass es funktioniert?!
Vielen Dank schon einmal für eure Mühe!
Bene
ich habe ein statisches Formular mit Datum, Startort, Zielort und weiteren Feldern.
Nun möchte ich - ähnlich wie bei google maps - Zwischenziele einfügen können. Die möchte ich gerne dynamisch einfügen.
Sprich: erst ist nur das Formular mit den statischen Feldern vorhanden und ein Button "Zwischenziel hinzufügen".
Beim Klick auf den Button soll ein weiteres Input-Field für das Zwischenziel erzeugt werden. Alternativ kann auch schon ein Zwischenziel-Feld vorhanden sein, was dann dupliziert wird, wenn es ein weiteres Zwischenziel gibt.
Ich habe hier schon ein feines Snippet gesehen, was an sich auch funktioniert.
Leider habe ich das Problem, dass sich der JS-Code das Eltern-Element, also in diesem Fall den div-Tag sucht und damit arbeitet.
Bei mir fügt sich das ganze Formular aber in mehrere divs- und span-tags. Und das ist mein Problem:
ich bekomme das JS-Snippet nicht überzeugt, das Formularfeld anzugezeigen...
Statisches Formularfeld:
HTML:
<!-- STARTORT -->
<div class="row">
<span class="inputname">
Startort
</span>
<span class="inputfield">
<input type="text" name="startort" value="" class="defbreite">
</span>
</div>
versuchtes dynamisches Feld:
HTML:
<!-- ZWISCHENZIELE-->
<div class="row">
<div="zwischenziele">
<span class="inputname">
Zwischenziel
</span>
<span class="inputfield">
<input type="text" size="20" name="textfeldname[]"><br>
<input type="button" value="noch eins"onclick="clone_this(this)"><br />
</span>
</div>
</div>
Funktionierender Code, der alleine wunderbar funktioniert...
HTML:
<html>
<head>
<title>Test</title>
<script type="text/javascript">
<!--
function clone_this(objButton)
{
/**
* Das div, in welchem sich das erste input befindet, wird geclont
**/
tmpNode = objButton.form.elements[0].parentNode.cloneNode(true);
/**
* das geklonte div wird vor dem Button eingefügt
* Syntax...Elternknoten.insertBefore(einzufügenderKnoten,KnotenVorDemEingefügtWerdenSoll);
**/
objButton.form.insertBefore(tmpNode,objButton);
/** Den Wert des eingefügten inputs wieder löschen
* previousSibling ist der vorige Knoten eines Typs vor einem anderen Knoten...
* in diesem Fall das neue div vor dem Button....firstChild wieder das erste Kindelement darin...also das input
**/
objButton.previousSibling.firstChild.value='';
}
//-->
</script>
</head>
<body>
<form>
<div><input size="20" name="textfeldname[]" type="text"></div>
<input value="noch eins" onclick="clone_this(this)" type="button">
</form>
</body>
</html>
Vielleicht hat einer eine Idee, wie ich das in meine Seite integrieren kann, sodass es funktioniert?!
Vielen Dank schon einmal für eure Mühe!
Bene