• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

ReferenceError: invalid assignment left-hand side / Warum ???

hobbycoder

Neues Mitglied
Guten Abend,

habe mir gedacht, ich mache ein paar Abkürzungen für gewisse functionen. Anfang klappte super
aber dann dieser fehler ! obwohl ich mehrmals überprüfte ob alle variablen vorhanden sind und
die reiehnfolge stimmt. Warum klappt dann der rest und warum das am ende nicht? Bitte hilft mir.


Mein Code:
Code:
<html>
<head>
</head>
<body>




<div id="divid">Not changed</div>





<script>

dw = function(temp)
{
    document.write(temp);                              // WORKS
}

gEBI = function(temp)
{
    return document.getElementById(temp);              // WORKS
}


gEBI_iH = function(temp)
{
    return document.getElementById(temp).innerHTML;    // NOT WORKS !!!!!!!!!!????
}

dw("document write abkuerzung");                  // WORKS !
gEBI("divid").innerHTML = "CHNGED 11111 !!!!";   // WORKS !
gEBI_iH("divid") = "CHANGED 222222 !!!";         // NOT WORKS !!!!!!!!!?????





</script>





</body>
</html>

Fehlerbericht (firefox Console):
Code:
[19:02:09.107] ReferenceError: invalid assignment left-hand side @ file:///... : 35
[19:02:09.107] Die Zeichenkodierung des HTML-Dokuments wurde nicht deklariert.
Das Dokument wird in manchen Browser-Konfigurationen mit verstümmeltem Text
dargestellt, wenn das Dokument Zeichen außerhalb des US-ASCII-Bereichs enthält.
Die Zeichenkodierung der Seite muss im Dokument oder Transferprotokoll deklariert
werden.
 
Zuletzt bearbeitet:
Werbung:
du gibst in der Funktion gEBI_iH keine Refernz auf die Variable, sondern nur eine Kopie zurück. Dieser Kopie kann dann auch kein Variablenwert zugewiesen werden.
verwende bei gEBI_iH einen zweiten Funktionsparameter mit dem innerHTML und setzte ihn in der Funktion (oder verwende gleich jQuery):

gEBI_iH = function(temp, iH)
{
return document.getElementById(temp).innerHTML = iH;
}
 
Werbung:
hallo,

vilen dank für eure antworten.

ich gebe bei gEBI_iH "keine Refernz auf die Variable"...
was ist denn mit gEBI ? warum klappt dort denn alles wunderbar
oder bei "dw"?

und Codierung fehlt? umlaute oder unbeknnte zeichen hatte ich doch nicht angewendet?
Oder hab ich da was übersehen...

Ich sage aber dennoch erstmal schonmal danke für eure antworten und für den alternativen Forschlag.
Am liebsten würde ich aber verstehen, warum das so nicht geht, während ja die anderen sachen ja laufen...

mfg

edit:
und schaut euch bitte besonders diese zwei zeilen an und deren defenierten functionen und
achtet bitte auf die komentre hinter den "//":

Code:
gEBI("divid").innerHTML = "CHNGED 11111 !!!!";   // WORKS ! 
gEBI_iH("divid") = "CHANGED 222222 !!!";           // NOT WORKS !!!!!!!!!?????

Und jQuery oder andere Frameworks kenne ich auch. Dies sollte aber auch eigendtlich so
eine mini oder micro Frmework sein. Möchte es aber dann noch mehr erweitern, aber wenn
ich nicht ganz folgen kann warum das nicht funktioniert und warum dann noch gEBI funktioniert
kann ich dann leider meine Arbeit nicht fortsetzen. Hatte übrigens auch noch nie so eine
Fehlermeldung gehabt. Sonnst waren es halt nur standartfehler wie Syntaxfehler oder Not Defenied
wo ich dann selber zurecht kahm

edit:
mein erster eintrag mit den quellcode ist irgendwie verschwunden.
Vorübergehend poste ich ihn dann hier:
Code:
<html><head></head>
<body>


<div id="divid">Not changed</div>


<script>

dw = function(temp)
{
    document.write(temp);                              // WORKS
}

gEBI = function(temp)
{
    return document.getElementById(temp);              // WORKS
}


gEBI_iH = function(temp)
{
    return document.getElementById(temp).innerHTML;    // NOT WORKS !!!!!!!!!!????
}

dw("document write abkuerzung");                  // WORKS !
gEBI("divid").innerHTML = "CHNGED 11111 !!!!";   // WORKS !
gEBI_iH("divid") = "CHANGED 222222 !!!";         // NOT WORKS !!!!!!!!!?????

</script>


</body></html>

Ausgabe:
CHNGED 11111 !!!!
document write abkuerzung

Fehlermeldung:
Code:
[18:01:59.992] ReferenceError: invalid assignment left-hand side @ file:///... :28
[18:01:59.992] Die Zeichenkodierung des HTML-Dokuments wurde nicht deklariert. Das Dokument wird in manchen Browser-Konfigurationen mit verstümmeltem Text dargestellt, wenn das Dokument Zeichen außerhalb des US-ASCII-Bereichs enthält. Die Zeichenkodierung der Seite muss im Dokument oder Transferprotokoll deklariert werden. @ file:///... : ohne Zeilenangabe
 
Zuletzt bearbeitet:
Zurück
Oben