innerHTML funktioniert nicht

trage

Mitglied
Morgen,

ich sitz hier in der Schule mit einem unfähigen Lehrer der auch kein Plan hatt.
Also ich hab hier folgendes Javascript das so weit fuktioniert, nur der Button für innerHTML will nicht so wie ich.

Code:
<html>
<head>
	<title>Teeeeeeesssst</title>
	<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<span id="headline">Teeeeeeesssst</span>
<form name="fm_test">
	<br>&nbsp;
	<br>&nbsp;
	<br>&nbsp;
	<br>&nbsp;
	<br>&nbsp;
	<input type="text" name="fm_test_input"><br>
	<div name="fm_test_output">a</div><br>
	<input type="button" value="Gib mich aus!(alert)" onClick="javascript: alert(document.fm_test.fm_test_input.value);"><br>
	<input type="button" value="Gib mich aus!(write)" onClick="javascript: document.write(document.fm_test.fm_test_input.value);"><br>
	<input type="button" value="Gib mich aus!(innerHTML)" onClick="javascript: document.fm_test.fm_test_output.innerText = document.fm_test.fm_test_input.value;"><br>
	<input type="button" value="Gib mich aus!(hier!)" name="fm_test_output_value" onClick="javascript: this.value = 'Gib mich aus!(' + document.fm_test.fm_test_input.value + ')';"><br>
</form>

</body>
</html>

Ich bin mir eigentlich der Meinung alles richtig gemacht zu haben. Da anscheinend doch noch fehlendes Wissen vorhanden ist, wäre ich für eine erklärung dankbar.

Mit freundlichem Gruß,
trage
 
1.) Nach gängigen wc3-Standards ist onclick als Event durchgehend klein zu schreiben, wie alle Attribute.

2.) "javascript:" gehört nicht in Events. Es war früher mal dafür gedacht Javasript über href-Attribute oder in der Adressleiste aufzurufen. Dafür gibt es heute Events. Es sollte also nicht mehr verwendet werden.

3.) Du sollest auch Formularelemente über die Methoden des DOM ansprechen (z.B. getElementById() oder getElementsByTagName() ) und ändern. InnerHTML gehört nicht zum DOM.

5.) Du kannst ausschließlich Formularelemente wie input, textarea usw. direkt mit Namen ansprechen. Für <divs> brauchst du die Methoden des DOM.

4.) Die Fehler-Konsole ist dein Freund

5.) Das Wissen eures Lehrers ist 10 Jahre alt.

Nun die Lösung deines Problems:
HTML:
<input type="button" value="Gib mich aus!(innerHTML)" onclick="document.getElementsByName('fm_test_output')[0].innerHTML = document.fm_test.fm_test_input.value;">
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück