• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[GELÖST] Fehlermeldungen, die ich nicht verstehe!!!!

ballotade

New member
Hallo Leute,

mein Einstieg in JavaScript gestaltet sich wirklich schwierig. Es funktioniert machmal, dann wieder nicht. Habe jetzt die FF-Fehlerkonsole gefunden und der zeigt mir zwei seltame Fehler an:

In der Zeile If(object.value=="")... sagt er mir: SyntaxError: missing ; before statement

Und auf die erste Zeile verweisend sagt er: ReferenceError: feldKontrolle is not defined

Hier der fragliche Code:

Code:
<script type="text/javascript">
	function feldKontrolle (object) {
		If(object.value=="") alert("Sie haben ja garnichts eingegeben!!!")
		else alert("Wert: " + object.value);
			
	}
</script>


Die Funktion wird innerhalb eines Input-Feldes in onchange aufgerufen.
Das schlimme ist: Wenn ich diesen Bereich um if-else auskommentiere und einfach nur ein alert Fenster öffne, dann funktioniert es ohne Fehler.

Bitte helft mir, das ist sowas von frustrierend!!!!!!
 
Zuletzt bearbeitet von einem Moderator:
Ich würde zwischen If und ( ein Leerzeichen lassen, genau wie zwischen .value und dem == und "".
Zudem würde ich sowohl den if-zweig als auch den else-zweig jeweils in { packen.

Außerdem hattest du beim ersten alert das abschließende ; vergessen.
Es langt nur script.


Code:
<script>
	function feldKontrolle (object) 
        {
		If (feldname.value == "") 
                {
                 alert("Sie haben ja garnichts eingegeben!!!");
                }
                else {
                      alert("Wert: " +object.value);
                      }
			
	}
</script>

ob es so klug ist, das ganze mit object anzureden, bin ich mir übrigens auch nicht sicher.
Was geau, übergibst du der Funktion denn?
 
Zuletzt bearbeitet:
Hey dbarthel,
erstmal danke für die schnelle Antwort.
Ich habe auch ziemlich viel an der Optik herumgebastelt, habe es dann aber so gemacht wie ich es in dem Buch gesehen habe aus dem ich lerne.
Ich übergebe der Funktion den Verweis auf das Textzeilenobjekt: onchange="feldKontrolle(this)";
Dadurch kann ich auf alle Werte zugreifen.
Seltsam ist auch dieser Hinweis, dass feldkontrolle nicht definiert sei.
Es ist bestimmt ein ganz doofer Fehler.
 
Ich habe feldKontrolle nur hier im Erklärungsteil falsch geschrieben. Das richtig seltsame ist dabei, dass es funktioniert (und die Funktion dann plötzlich doch definiert ist), sobald ich den if-else-Teil auskommentiere und nur noch ein alert-fenster sich öffnen lasse. Z.b. das aus dem else Teil. Dann zeigt er auch den Wert des Textfeld-Objekts richtig an.

Wäre echt dankbar für andere und weitere Ideen...
 
Kannst du uns mal den Link zu der Seite geben, damit wir uns das selbst mal anschauen können? Ansonsten schau mal in deine Browserkonsole (F12) ob da was steht.
 
Man schreibt "if" klein, und nicht groß. Übrigens kann man sich den Aufwand für eine JavaScript-Prüfung auf leere Felder sparen: dafür gibt es das "required"-Attribut - schöner, benutzerfreundlicher und auch bei deaktiviertem JS.
 
Cool, Julian! Danke!
Ich wußte doch, dass es was ganz blödes ist. Hätte ich auch darauf kommen können, weil mein Editor das IF nicht eingefärbt hat...
Jetzt funzt es. Und gut das mit dem required zu wissen.
Ich hoffe, ich kann hier in Zukunft ein paar intelligentere Fragen stellen. ;-)
 
Zuletzt bearbeitet:
Zum "required"-Attribut: Spektakuläre Formulare mit HTML5 - HTML5 Rocks - kannst du da auch einfach mal selbst testen...

Das ist eine gute Seite. Da probiere ich auf jeden Fall was aus.

@mikdoe: meine Seite ist noch nicht online. Ich arbeite viel mit Datenbanken und werde die Seite erst hochladen, wenn sie einigermaßen funktioniert und alle Sicherheitsfragen beareitet sind...
 
Du kannst auch unvollständige Entwicklungsstände online stellen, einfach das Verz. mit .htaccess mit Passwort absichern. Weißt du, wie das geht? Oder hast du noch garkeinen Webspace online?
 
Ich habe ein paar Seiten schon hochgeladen, aber das hier ist mein erstes dynamisches Projekt mit Datenbank.
Das mit .htaccess habe ich schonmal gehört, aber ich wußte nicht, wie man so eine Datei erstellen soll. Windows meckert jedenfalls, wenn ich vor dem Punkt nichts eingebe.
Also wenn Du da einen guten Link hast. :)

Und wo ich grad so ganz dumme Fragen stellen kann ;-): Funktioniert unter JavaScript also kein "and" oder "or" sondern nur &&? Und wie zum Kuckuck bekommt man die beiden senkrechten Striche für das oder hin? Welche Tastenkombination produziert die?
 
Windows meckert jedenfalls, wenn ich vor dem Punkt nichts eingebe.
In cmd mit rename ist das gar kein Problem.
Funktioniert unter JavaScript also kein "and" oder "or" sondern nur &&?
Ja.
Und wie zum Kuckuck bekommt man die beiden senkrechten Striche für das oder hin?
Das heißt Pipe und auf der deutschen Windows-Tastatur ist das auf Strg+Alt+< - ich hab' aber noch zwei übrig: || ;)

ob es so klug ist, das ganze mit object anzureden, bin ich mir übrigens auch nicht sicher.
Das ist komplett egal. Object könnte Probleme bereitet...
 
Einfach in das zu schützende Verzeichnis eine Datei namens .htaccess legen mit folgendem Inhalt:
Code:
AuthUserFile /mein/absoluter/pfad/auf/dem/server/.htpasswd
AuthName "Gesicherter Bereich"
AuthType Basic
require user poldi

Dann in das Verzeichnis /meinabsoluterpfadaufdemserver die Datei .htpasswd legen mit diesem Inhalt:
Code:
poldi:$apr1$59XiJ1Dd$Y9WfSXaeG/.XjhUXwSHTf1

$apr1$59XiJ1Dd$Y9WfSXaeG/.XjhUXwSHTf1 ist das Passwort MD5 gehasht, es lautet übrigens in diesem Fall abcdef

Auf dieser Seite kann man den Benutzernamen und das Passwort in Klarschrift eingeben und auf Create klicken um eine fertige Zeile für die Datei .htpasswd zu erhalten.
Htpasswd Generator - Create a htpasswd password

Wenn alles richtig ist und man nun im Browser etwas im Verzeichnis /server aufruft sollte ein Anmeldedialog kommen. Benutzer ist poldi, Passwort ist abcdef.
 
Wow. So viel kostbares Wissen. Ich probiere alles genauestens aus und horte schon mal die Pipes für schlechte Zeiten (Vielleicht wenn die <-Taste kaputt ist, wobei, dann hat man in HTML echt ein Poblem ;-) )

Danke mikdoe und kkapsner
 
Gern. Bin gespannt, obs klappt. Übrigens kann man seinen PC auch als Server im Netz freigeben, braucht man im Grunde nur am Router einstellen.
 
Zurück
Oben