Bei Checkbox "true" eine Textarea anzeigen

Moritz123

Erfahrenes Mitglied
Hallo!

ich möchte gerne folgendes realisieren:
Aktiviert der User eine Checkbox, soll eine Textarea angezeigt werden.

Ich habe bereits die Suche bemüht, da ich mir eigentlich sicher war, so etwas schon einmal hier gesehen zu haben; leider ohne Erfolg. Ich würde mich also auch über Suchbegriffe oder gar direkte Links zum Thema freuen.

Vielen Dank und eine erfolgreiche Woche!
 
Hier kannst du nachlesen, wie man ermittelt, ob eine Checkbox gecheckt wurde.
Dann musst du jenachdem entsprechend visibility oder display des <textarea> ändern... das wars dann schon.
 
Hallo!

vielen Dank für die schnelle Antwort!

Ich hab das Ganze jetzt so:
HTML:
<input type="checkbox" name="return_string" id="return_string" onmouseup="funktion(this)"> Gesamten ReturnString anzeigen
	<script type="text/javascript">
	<!--
		function funktion(objBox)
		{
		//Zugriff auf ID der Box per "objBox.id" 
		//Zugriff auf übergebene Kategorie per "strCat" 
			if(objBox.checked)//die Box ist gecheckt
        		{
            		document.write('<textarea rows="5" style="width:250px; visibility:visible;"><?=$tempTitel;?></textarea>');
        		}
    		else//die Box ist nicht gecheckt
        		{
            		document.write('<textarea rows="5" style="width:250px; visibility:hidden;"><?=$tempTitel;?></textarea>');
        		}
		}
	//-->
	</script>

Allerdings zeigt der Browser nach aktivieren der Checkbox eine ganze leere Seite. Da kann irgendwas nicht stimmen.
 
write() darf man nur während des Ladens der Seite benutzen... andernfalls wird die ganze Seite überschrieben(wie du bereits bemerkt hast:-))

Packe das <textarea> sofort in die Seite und ändere die jeweilige CSS-Eigenschaft..... wie bereits im vorigen Posting erwähnt. Dazu solltest du dem Textarea optimalerweise einen Namen geben, um es bequem ansprechen zu können.
 
Hallo!

danke für die Antwort. Aber nun bin ich reichlich verwirrt. Das Script steht bereits auf der eigentlichen Seite zwischen den <body>-Tags...
Hast Du vielleicht irgendwo eine Referenz oder ein Beispiel zu visibility oder display?
Ich glaub ich stehe grade etwas auf dem Schlauch :)
 
Das Script steht in der Seite..... und wird beim Laden derer eingelesen.
Die Funktion, welche per write() in die Seite schreibt, wird aber erst später ausgeführt.

Betreffs Link.... schau dir bei den Tutorials mal des Basic-DHTML-Menu an....da werden zwar <div>'s angezeigt/versteckt, das Prinzip ist aber dasselbe.
 
Hallo!

ok, nu klappts. Vielen Dank!

Allerdings nur so:
HTML:
<script type="text/javascript">
	<!--
		function funktion(objBox)
		{
		d = document;
		//Zugriff auf ID der Box per "objBox.id" 
		//Zugriff auf übergebene Kategorie per "strCat" 
			if(objBox.checked)//die Box ist gecheckt
        		{
            		d.getElementById('text').style.display="none";
        		}
			else
				{
					d.getElementById('text').style.display="inline";
				}
    		}
	//-->
	</script>
was ich persönlich etwas komisch finde. Naja, hauptsache es geht.
 
Naja, dass wenn die Checkbox "gecheckt" ist, display auf "none" bzw wenn sich nicht "gecheckt" ist auf "inline" gesetzt wird. Normalerweise sollte es doch andersherum sein oder nicht? Naja is ja auch wurscht - hauptsache es funktioniert.
 
Kann es sein, dass du das ganze per "onclick" aufrufst?
Wenn ja.... nehme lieber onmouseup.... je nach Browser wird beim onclick nicht der neue Zustand geliefert.
onmouseup feuert später.
 

Neue Beiträge

Zurück