Textareas hinzufügen entfernen,...

JesusFreak777

Erfahrenes Mitglied
hallo,
ich hab hier ein script mit dem man textareas Hinzufügen und entfernen kann,... (so ähnlich im inet gefunden:

folgende drei Probleme:

1. wenn ich inputfelder Hinzufüge erscheint der Löschenbutton (sobald ich auf Hinzufügen klicke) kann ich auch wenn die vorletzte textarea wech ist den irgendwie wieder entfernen?
2. wenn ich eine Textarea Hinzufüge, möchte ich über der Textarea drei Radiobuttons haben die immer den gleichen Text haben (Feld1, Feld2, Feld3)
3. mein wichtigestes Problem,... wenn ich jetzt auf submit poste möchte ich die Radiobuttons folgendermaßen benennen "rad'x'" und die textarea "tex'x'" das 'x' soll eine fortlaufende zahl sein damit ich dann auf der nächsten seite die arrays -> "tex" und "rad" habe.

ist das zu realisieren?



PHP:
<script type="text/javascript" language="javascript">
function Hinzufuegen (Filter) {
	textarea = document.createElement( 'textarea' ); 
	textarea.name = (Filter)+"[]";
	textarea.style.width = "80%";
	textarea.style.height = "280px";
	textarea.onfocus = function () {this.style.backgroundColor = "#ffff12";}
	textarea.onblur	= function () {this.style.backgroundColor = "#ffff28";}
	document.getElementById(Filter+"_add").appendChild(textarea);
	document.getElementById('del').style.visibility = 'visible';
}


function Entfernen (Filter) {
	textareas = document.getElementById(Filter+"_add").getElementsByTagName("textarea");
	if (textareas.length > 0) {
		knoten = textareas[textareas.length-1];
		document.getElementById(Filter+"_add").removeChild(knoten);
	}
}
</script>

<form method="post" action="dump.php">
<input type="submit" value="Submit" />


<fieldset id="funktion_input">
<legend><-- Songwriter --></legend>
<input type="button" value="Neues Feld" onclick="Hinzufuegen('funktion1')">
<input type="button" id="del" style="visibility:hidden" value="Löschen" onclick="Entfernen('funktion1')"><br>
    <input type="radio" name="rad" value="f1">Feld1
    <input type="radio" name="rad" value="f2">Feld2
    <input type="radio" name="rad" value="f3">Feld3
<br>
<textarea name="tex" style="width: 80%; height: 280px" onFocus="this.style.backgroundColor='#FFFFAA'" onBlur="this.style.backgroundColor='#EFEFEF'"></TEXTAREA><br>
<p id="funktion1_add"></p>
</fieldset>

</form>

*DANGE*
 
Hi,

das ist Javascript, kein PHP.

1. Du kannst die visibility-Eigenschaft einfach wieder auf hidden setzen
2. Diese Elemente musst Du dann halt auch erstellen, genau wie die Textareas. Die nötigen Funktionen zum Erstellen und Einfügen von Elementen findest Du z.B. bei Selfhtml.
3. Die Arrays in $_POST erzeugst Du, indem Du die Elemente rad[x] bzw. tex[x] nennst.

LG
 
Hi,

Du könntest eine globale Variable mitlaufen lassen, die Du jedesmal, wenn eine Textarea hinzugefügt wird, erhöhst (und wieder runterzählst, wenn die letzte Textarea entfernt wird). Die verwendest Du dann für die Elementnamen.

LG
 
in der theorie ist mir das klar,... aber wie schaut das dann in der praxis aus,....
ich hab auch ein wenig mich richtung radiobuttons orientiert,...

gitb es irgendwo tuto´s oder beispiele?
 
Zurück