Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Aufruf einer JavaScript-Funktion über einen Input-Button... Zunächst findet er sie nicht, bis ich den Namen ändere?!

Frage Entwicklung JavaScript

Mitglied: starhunter

starhunter (Level 1) - Jetzt verbinden

06.07.2010 um 10:41 Uhr, 4193 Aufrufe, 1 Kommentar

Kleines Verständnisproblem ... eine Funktion aufgerufen über ein onClick-Ereignis funktioniert an einer Stelle nur wenn ich den Namen ändere, wobei ich sie allerdings bereits zuvor über die Firebug-Konsole ohne Fehlermeldung aufrufen konnte.

Hallo an alle,

das hier ist mal kein eigentliches "Problem", vielmehr bin ich etwas verwirrt und frage mich ob jemand den Grund für dieses mir doch etwas merkwürdig erscheinende Verhalten kennt... Folgendes Szenario:

Es gibt eine JavaScript-Datei "errform.js", welche von 2 HTML-Seiten gemeinsam benutzt wird da sie sich (mit Ausnahme einiger Felder) stark ähneln und einen ähnlichen Zweck erfüllen.
In Seite 1 rufe ich eine Funktion in dieser Datei (benannt mit "search_related_entries") über ein onClick-Event eines Input-Buttons auf - und das funktioniert auch ohne Probleme, es passiert genau das was auch passieren soll.

Gut, zu Seite 2:
Ich habe auch hier einen entsprechenden Button angelegt, mit exakt dem gleichen Aufruf (die Funktion ist parameterlos) - auch extra sämtliche Zugriffe auf DOM-Felder in try-catch-blöcke abgefasst... Ich klicke also auf den Button und JavaScript meldet mir "search_related_entries ist keine Funktion".
Wenn ich nun (OHNE jegliche Änderungen oder neu laden) die Funktion manuell über die Firebug-Konsole aufrufe, passiert interessanterweise genau das was ich erwarte ohne Fehlermeldung -> die Funktion selbst ist also sowohl in Ordnung als auch fehlerfrei und geladen.

Mal bildlich:
2b6c725c0954569cfc416d9463eec973 - Klicke auf das Bild, um es zu vergrößern
Die Fehlermeldung in der Konsole erscheint nach Klick auf den Button. Darunter ist das, was nach einem Klick auf den "Run"-Button der Konsole passiert.
Zum Vergleich der Aufrufe habe ich auch den HTML-Code des Buttons eingeblendet...

Ich habe dann, nachdem ich Tippfehler und auch den Cache als Ursache ausgeschlossen hatte zum Spaß einfach mal den Namen der Funktion geändert (von "search_related_entries" in "search_related") und siehe da, auf einmal geht es.
Ich hab ja schon die ein oder andere merkwürdige Verhaltensweise von JavaScript erlebt, aber das hier toppt jetzt mal alles...

Randbemerkungen:
- Eine Funktion mit gleichem Namen existiert nirgends, habe extra auch alle Dateien mit grep durchsucht...
- Sobald ich den Namen wieder auf "search_related_entries" ändere funktioniert es wieder nicht mehr (aber NUR auf Seite 2 und auch NUR im onClick ... manuell und auf Seite 1 weiter problemlos)
- Die JavaScript-Datei ist wie gesagt definitiv geladen... andere Funktionen aus dieser führt er auch bei Klick auf den Button ohne zu Murren aus (im Kontext beider Seiten ...)

Also, irgendwer eine Idee? Oder muss ich das in meine Galerie der unerklärlicherweise nicht funktionierenden Dinge stecken? ;)

Grüße,
Mo
Mitglied: Enclave
26.07.2010 um 18:36 Uhr
Also ohne die Möglichkeit ein wenig zu testen würde ich auf einen etwaigen Javascript Fehler in der 2. Datei tippen... Leider zeigt der Firefox nur relativ wenige Javascriptfehler an, teilweise nichtmal kritische oder gar Syntaxfehler.

Daher teste die Seite dochmal mit angeschalteter Fehlerkonsole im Safari (auf dem Mac benutze ich diesen immer zum Javascript debuggen)...


Mfg

Enclave
Bitte warten ..
Ähnliche Inhalte
JavaScript
AngularJS Variable über Input in Funktion ausführen

Frage von badkilla zum Thema JavaScript ...

Batch & Shell
gelöst Powershell Funktion Ausgabe in Datei (2)

Frage von schicksal zum Thema Batch & Shell ...

JavaScript
Per URL direkt Button klicken (3)

Frage von Peter32 zum Thema JavaScript ...

Peripheriegeräte
gelöst Wo findet man Günstige Krankenhaus Tastaturen (5)

Frage von Herbrich19 zum Thema Peripheriegeräte ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Webbrowser
Windows 7 unbeliebte Internetseite sperren (15)

Frage von Daoudi1973 zum Thema Webbrowser ...

ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (13)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...

LAN, WAN, Wireless
gelöst Suche Firmware Image für Cisco Aironet 1252 (10)

Frage von Herbrich19 zum Thema LAN, WAN, Wireless ...

VB for Applications
Daten eines einzelnen Tabellenblatt als Mail versenden (kein Dateianhang) (9)

Frage von Zentralenteufel zum Thema VB for Applications ...