2017-10-13 1 views
1

Meine ejb Antwort mit AJAX mag diese konvertieren:Wie AJAX String Antwort auf JSON

"{'Active':{'123','456','789'},'Inactive':{'111','222','333'}}" 

ich die obige Zeichenfolge JSON-Objekte umwandeln möchten. JSON-Objekte werden in JavaScript zum Zeichnen der Karte verwendet.

Oder

Ich mag die gleiche Zeichenfolge wie unten in JavaScript umgesetzt werden:

var aktiv = [ "123", "456", "789"]; var inaktiv = ["111", "222", "333"];

Hinweis: Ich verwende AJAX in JS.

+1

wollte [Es gibt nicht so etwas wie ein "JSON-Objekt"] (http : //benalman.com/news/2010/03/theres-no-such-thing-as-a-json/), Sie wollen nur ein Objekt. Außerdem ist die von Ihnen angezeigte Antwortzeichenfolge kein gültiges JSON, alle Zeichen mit einem Anführungszeichen müssen in Anführungszeichen gesetzt werden. Wenn Sie das beheben, können Sie die Methode 'JSON.parse()' verwenden. – nnnnnn

+0

Antwort ist nur eine Zeichenfolge in diesem Format. Muss als JSON konvertiert werden – Murugesh

+0

Mein Punkt ist nicht erfinden Sie Ihr eigenes, nicht-Standard-Datenübertragungsformat, reparieren Sie Ihre EJB, so dass es mit einer Zeichenfolge, die gültig ist JSON reagiert, so dass Ihre JS einfach 'JSON.parse verwenden kann) '. Also fixiere die Anführungszeichen, wie ich bereits sagte, und ich habe auch bemerkt, dass die inneren '{' und '}' Arrays zu definieren scheinen, also sollten sie '[' und ']' sein. – nnnnnn

Antwort

1
var jsonString = JSON.parse(response); 

response ist, was Sie von Ajax erf erhalten (eine JSON-String) und jsonString ist, was Sie

+1

Beachten Sie, dass die in der Frage gezeigte Antwortzeichenfolge kein gültiger JSON ist. – nnnnnn

+0

Dann wird es ein Parse-Fehler sein, es wird nur funktionieren, wenn die Antwort JSON-Typ Zeichenfolge ist. –

-1
let JSON_Str = "{'Active':{'123','456','789'},'Inactive':{'111','222','333'}}" 

Obj = JSON.parse(JSON_Str) 
+0

Dies ergibt einen Analysefehler, da die Zeichenfolge nicht JSON ist. – nnnnnn

+0

Nur zwei Zeilen Code zu schreiben und nicht zu erklären, wie dieser Code dem OP hilft, das Problem zu lösen, ist nicht sehr nützlich. Bitte lesen Sie [Wie schreibe ich eine gute Antwort?] (Https://stackoverflow.com/help/how-to-answer) und versuche, ausführlichere Antworten zu veröffentlichen. – EhsanT

+0

'wie dieser Code OP hilft' - die Antwort ist * kein einziges * –

Verwandte Themen