2012-04-02 14 views
1

Ich versuche, eine Reihe von Variablen zu einem versteckten Eingang Wert zu übergeben, aber ich bin einen dummen Syntaxfehler in diesem Code erhalten:jQuery Syntaxerror: Unexpected token =

$('#imgdata').append( 
    '<input type="hidden" name="imgdata[' + id + '][width]" value="' + _width + '"/> 
    <input type="hidden" name="imgdata[' + id + '][height]" value="' + _height + '" /> 
    <input type="hidden" name="imgdata[' + id + '][left]" value="' + _left + '" /> 
    <input type="hidden" name="imgdata[' + id + '][top]" value="' + _top + '" /> 
    <input type="hidden" name="imgdata[' + id + '][src]" value="' + _src + '" />' 
); 

Ich muß einen einfache Syntax Fehler wird mit Blick auf . Die Konsole sagt mir das in der 3. Zeile.

LÖSUNG:

Das Problem war mit dem Zeilenumbruch. Wenn Sie den Code inline machen, ohne die Eingabetaste zu drücken, wurde die Formatierung korrigiert.

+3

Wanna erleuchte uns mit dem, was die Konsole sagt Ihnen? Ist es nur "Syntaxfehler" mit absolut keinen anderen Informationen? Meine Vermutung ist, dass die Worte "Unterminated String Literal" irgendwo drin sein könnten. :) Wie auch immer, Sie sollten in Betracht ziehen, dass Sie sicherstellen, dass jede Zeile mit einem "+" endet und 3,4,5 und 6 mit einem "" beginnen, da nicht jeder Editor Zeilenumbruch nahtlos verarbeiten kann. – jmort253

+0

Chrome sagt 'Uncaught SyntaxError: Unexpected token =' in Zeile 3, während Safari sagt 'SyntaxError: Unerwartetes EOF' – mistersoftee

+0

Das Problem war in der Tat ein Zeilenumbruch Problem. Ich habe es einfach eine Zeile im Texteditor gemacht und das hat es behoben. Vielen Dank. – mistersoftee

Antwort

3

JavaScript-Zeichenketten müssen mit \ enden. Außerdem sicherstellen, dass alle Variablen tatsächlich definiert sind.

Sie Codebeispiel sollte wie folgt lauten:

$('#imgdata').append( 
    '<input type="hidden" name="imgdata[' + id + '][width]" value="' + _width + '"/>\ 
    <input type="hidden" name="imgdata[' + id + '][height]" value="' + _height + '" />\ 
    <input type="hidden" name="imgdata[' + id + '][left]" value="' + _left + '" />\ 
    <input type="hidden" name="imgdata[' + id + '][top]" value="' + _top + '" />\ 
    <input type="hidden" name="imgdata[' + id + '][src]" value="' + _src + '" />' 
);​ 
+0

+1 - Ich habe vergessen, dass Sie \ hinzufügen könnten. Ich muss mich daran erinnern. – jmort253

+0

Danke. Das funktioniert. – mistersoftee

+0

http://stackoverflow.com/questions/805107/multiline-strings-in-javascript – shaunsantacruz

Verwandte Themen