Veröffentlicht 26. Februar 201411 j Hi Leute, ich hoffe ihr könnt mir helfen. Ich verzweifle so langsam. Bin recht neu im Bereich der Webentwicklung und schaue mir gerade ein wenig Javascript an. Ich habe mir diesen kleinen Codeblock zum setzen des disabled attributs eines html select zusammengefuscht. Im JSfiddler funktioniert auch alles. Edit fiddle - JSFiddle Aber wenn ich meinen Code mittels <script type="text/javascript"></script> im Headerblock einfüge, funktioniert es nicht mehr. So sagt mir bitte, welchen blöden Anfängerfehler habe ich gemacht? Danke und viele Grüße, Swiffe
26. Februar 201411 j Das was du gepostet hast sieht doch schon einmal gar nicht so verkehrt aus. Häufig vertippt man sich am Anfang z.B. bei Zugriff auf eine ID oder man vergisst Zeichen was mitunter zur Folge hat das der gesamte Javascript block nicht ausgeführt wird bzw. nicht das macht was man erwartet. Gehe am besten dein Dokument nochmal in ruhe durch und wenn du nichts findest postest du es am besten mal komplett Wenn du das gemacht hast achte mal darauf was du in der fiddle eingestellt hast - anscheinend hast du dort automatisch ein onload mit eingebunden, wenn du dieses in deinen Dokument im Script nicht berücksichtigst wird probiert die Function an ein Element zu binden was ggf. gar nicht da ist Quick'n'Dirty: <scripte type="text/javascript"> window.onload = function() { document.getElementById('count_pullover').onchange = function () { document.getElementById('size_pullover').disabled = this.value == '0'; }} </script> Hoffe ich hab nun auf die schnelle nichts übersehen auf den weg ins Bett Gruß Bearbeitet 26. Februar 201411 j von Townsend
26. Februar 201411 j Autor Hi, riesen Dank! Es lag an dem window.onload = function() {bla bla bla... } Jetzt klappt alles. Aber eine Sache hab ich noch, gibt es keine Probleme wenn beide Funktionen function heißen? Oder ist es egal, da die funktionen jeweils direct hinter dem aufruf definiert werden?
27. Februar 201411 j Die Funktion ist dann unnamed. Du kannst ja Funktionen so definieren: var bla = function () {} was function bla () {} entspricht. Sowas wird erst interessant, wenn du "Methoden" definierst. var car = { wheels : 4, getAmountOfWheels : function () { return this.wheels; } } Falls du aus irgendeinem Grund arguments.callee im strict Mode verwenden möchtest, dann kann der Aufruf aus einer unnamed Funktion Fehler werfen. Dann muss man afaik der Funktion trotzdem einen Namen geben. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions_and_function_scope/arguments/callee <scripte type="text/javascript"> window.onload = function CustomOnloadFunction() { document.getElementById('count_pullover').onchange = function OnChangeFunction() { document.getElementById('size_pullover').disabled = this.value == '0'; }} </script> Das sollte afaik auch gehen..
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.