JQuery-Syntaxfehler in Firebug, aber nicht in meinem Code

8

In einer PHP-Seite habe ich eine Dropdown-Liste, die die jQuery-Änderungsfunktion auslöst und einen POST mit AJAX ausführt, um eine zweite Dropdown-Liste auf der Seite zu füllen.

Es sollte alles ziemlich einfach sein, aber Firebug wirft einen Syntaxfehler für ein '?' das erscheint zur Laufzeit in meinem Code, der eigentlich nicht in meinem Code ist.

Dies ist mein JavaScript-Code:

%Vor%

Nachfolgend ist der PHP-Code, der in ajax.php ausgeführt wird:

%Vor%

fillselecteditmultiple () gibt die Optionen für die bevölkerten aus, die diejenigen hervorheben, die vorausgewählt werden sollen. Es funktioniert gut, da ich auf anderen Seiten ohne Probleme verwende. Um sicherzustellen, dass kein Fehler von der Funktion selbst ausgelöst wurde, habe ich sogar versucht, die Funktion so zu ändern, dass eine einfache $ catlist = 'abc' als Antwort ausgegeben wird, immer noch der gleiche Fehler.

Der seltsame Teil ist, dass Firebug einen Fehler in den letzten 2 Zeilen des JavaScript-Codes ausgibt, wie Sie in dem angehängten Bild sehen können:

Was könnte das verursachen? in meinem Code erscheinen?

    
bikey77 05.12.2012, 07:41
quelle

4 Antworten

5

Überprüfen Sie einfach Ihre Codierung. Wenn am Ende einer Zeile "seltsame" Symbole zu sehen sind, kann das meistens mit Codierungsfehlern geschehen.

Und außerdem allgemeiner Rat:

  

Wenn ein Programm nicht wissen kann, wie ein Unicode-Codepunkt dargestellt werden soll   druckt ein Fragezeichen in einem Quadrat (ich nehme an, Sie haben das gesehen   vor) oder, falls es nicht möglich ist, ein einfaches Fragezeichen. Ein unerwartetes   Fragezeichen macht Entwickler immer verdächtig für die Codierung.
(c)   Áxel

    
StasGrin 05.12.2012, 09:31
quelle
1

Sie senden JavaScript-Code diese Daten,

%Vor%

aber in PHP-Datei versuchen Sie, $ _POST ['Tagliste'],

zu bekommen

Variablennamen sind nicht identisch.

versuche Daten zu ändern: "taglist = ...." oder $ _POST ['tag'].

    
saitakyuz 05.12.2012 07:55
quelle
1

Debuggen Sie den Code Schritt für Schritt. Setzen Sie zuerst eine else -Anweisung in Ihre ajax.php -Datei und prüfen Sie, wo die Ausführung abläuft. Wenn es in der if -Anweisung steht, dann setze eine die() -Funktion auf jede Zeile, um zu prüfen, wo der Fehler kommt. Ein möglicher Fehler in deinem Code ist, dass du tag in deine Ajax-Funktion schickst und du $_POST['taglist'] bekommst. #taglist löst diese Ajax-Funktion aus, ihr Wert wird nicht gebucht. Nur der Wert, den Sie in data -Attribut angeben, wird gebucht. Ändern Sie Ihre if-Bedingung von

Von

%Vor%

An

%Vor%

Dies könnte der Grund sein. Else ist gut.

    
Awais Qarni 05.12.2012 07:56
quelle
0

Ich denke, Sie könnten dort einen Platz haben. Entfernen Sie den Platz nach});

    
Kuldeep Singh 05.12.2012 07:47
quelle

Tags und Links