Warum gibt mein Server-Code-Ajax-Aufruf eine Antwort in doppelte Anführungszeichen zurück?

8

Ich mache einen Ajax-Aufruf von meinem Javascript zur Webmethode einer Aspx-Seite. Die Zeichenfolge, die ich zurückgebe, ist aus irgendeinem Grund in doppelte Anführungszeichen eingeschlossen. Ich habe versucht, sie zu entfernen, aber der Ersatz ersetzte nur den ersten aus irgendeinem Grund. Es gibt keine Anführungszeichen, die die Zeichenfolge auf der Serverseite umbrechen.

%Vor%

Das mache ich auf dem Server:

%Vor%

Irgendwelche Ideen?

    
Yatrix 09.04.2013, 21:41
quelle

1 Antwort

13

Erstens, wenn Sie befürchten, dass Sie "mystring" anstelle von "mystring" (doppelte Anführungszeichen statt einfache Anführungszeichen) sehen, liegt das daran, dass die Entwicklerkonsole automatisch Anführungszeichen um Zeichenfolgenwerte anzeigt Zeichenfolge enthält tatsächlich das "Anführungszeichen". Die äußeren Anführungszeichen, die Sie in der Konsole sehen, sind nicht vorhanden, nur die inneren Anführungszeichen sind.

Als nächstes beginnen und enden JSON-Strings gemäß der JSON-Spezifikation ( Ссылка ) mit Anführungszeichen. Wenn Sie Json-Strings analysieren möchten, verwenden Sie:

%Vor%

Wenn Sie einfach alle Anführungszeichen in einer Zeichenkette loswerden möchten, versuchen Sie

%Vor%

Beachten Sie, dass das letztere ALLE Zitate entfernt, einschließlich (maskierte) Anführungszeichen in der Mitte der Zeichenkette.

Wenn Sie mit JSON-Objekten arbeiten, empfehle ich dringend, mit JSON.parse

zu arbeiten, wie Ihr Antwort-Header (application / json) zu zeigen scheint     
Bart 09.04.2013, 22:03
quelle

Tags und Links