Fehler: "Das Objekt unterstützt..."

hans_schmid

Erfahrenes Mitglied
Hallo,

ich habe hier ein kleines Problemchen, dass ich leider als Javascript-Neuling nicht wirklich lösen kann:

Mein Quellcode sieht (in stark verkürzter Form) folgendermaßen aus:
PHP:
function vorschau()
{

}
.
.
.
.
<input type="checkbox" name="vorname" onClick="vorschau()" value="true">Vorname
<input type="checkbox" name="nachname" onClick="vorschau()" value="true">Nachname
Sinn der ganzen Sache soll mal eine "dynamische" Vorschau der angeklickten Werte werden. D.h. ich überprüfe bei Klicken einer der Checkboxen, welche Boxen gecheckt sind und welche nicht.
Dementsprechend erstelle ich dann den Vorschautext.

Das gleiche Prinzip funktioniert an anderer Stelle im Code einwandfrei.
Bei diesem speziellen Fall aber bekomme ich immer bei klick auf eine der Checkboxen den Fehler: Das Objekt unterstützt diese Eigenschaft oder Methode nicht
Woran kann das liegen? Was habe ich falsch gemacht?

Danke schonmal im Vorraus

Hans
 
Das ganze scheint nicht wirklich ein Problem der Funktion selbst, als vielmehr ein Problem beim Funktionsaufruf zu sein.
Ich hab das ganze mal mit dem Funktionsinhalt document.myform.vorschau.value = "Test" getestet, da kommt der gleiche Fehler als wenn ich in der Fkt. garnichts stehen habe.
Also ich bin ratlos.

MfG
Hans
 
Wenn eine JS-Funktion einen Fehler verursacht, liegt der Fehler in der Funktion.... ohne die zu kennen, kann dir hier niemand helfen:( oder sollen wir jetzt raten, was den Fehler verursachen könnte?
 
Meine magische Glaskugel sagt: Du hast ein Hochkommata vergessen, aber ab und an trügt meine Glaskugel, weil sie mal aus dem Fenster gefallen ist! :-)
 
Sooo... damit ich mich nicht auf eine defekte Glaskugel verlassen muss :-) , die aktuelle Version mit Funktionsinhalt:

PHP:
<html>
<head>
	<title>Untitled</title>
		<script language="JavaScript">

function vorschau()
{
document.myform.vorschau.value = "Test";
}
</script>
</head>

<body>
<form name="myform">
<table>
<tr>
<td>
<input type="checkbox" name="vorname" onClick="vorschau()" >Vorname <br>
<input type="checkbox" name="nachname" onClick="vorschau()" >Nachname
</td>
<td>
Vorschau:
<input type="text" name="vorschau">
 </td>
</tr>
</table>
</form>

</body>
</html>

Ich hoffe, das hilft...

MfG
Hans
 
Na bitte, es geht doch :-)
Der Haken ist einfach, dass die Funktion den selben Namen hat wie ein Element in der Seite. Benenne eines von den beiden um, und es läuft:)
 
Das Problem ist das Du "Vorschau" zweimal nutzt:

1.) als Funktionsname
2.) als Name deines Inputs

Korrigiert (und funktioniert):

Code:
<html> 
<head> 
    <title>Untitled</title> 
        <script language="JavaScript">
function test() 
{ 
document.myform.vorschau.value = "Test"; 
} 
</script> 
</head> 
<body> 
<form name="myform"> 
<table> 
<tr> 
<td> 
<input type="checkbox" name="vorname" onClick="test()" >Vorname <br> 
<input type="checkbox" name="nachname" onClick="test()" >Nachname 
</td> 
<td> 
Vorschau: 
<input type="text" name="vorschau"> 
</td> 
</tr> 
</table> 
</form> 
</body> 
</html>
 
Original geschrieben von fatalus
Na bitte, es geht doch :-)
Der Haken ist einfach, dass die Funktion den selben Namen hat wie ein Element in der Seite. Benenne eines von den beiden um, und es läuft:)

Hmm, ich glaube ich muss "fatalus" mal Hausverbot geben, jedesmal schneller wie ich! :-)
 

Neue Beiträge

Zurück