2 Stimmen

Jquery mit JSON-Array - in Javascript-Array konvertieren

Ich habe die folgende XML-Ausgabe von einem asp.net-Webservice:

        1710
        1711
        1712
        1713

        Teleszkóp 350mm gázas
        Teleszkóp 150mm olaj
        Teleszkóp 260mm olaj sárga
        Teleszkóp 260mm elso

Ich verwende JQuery's $Ajax, um es vom Server zu erhalten, es funktioniert gut. Es wird in ein JSON-Objekt umgewandelt, aber wie kann ich es zurück in ein JavaScript-Array konvertieren?

Update: Das Problem ist, wenn es mit eval() analysiert wird, wird dieses Array-in-Array nur zu einem einzigen String!

0voto

Jonny Buchanan Punkte 60128

Wenn Sie jQuery ausdrücklich mitgeteilt haben, dass Sie ein XML-Dokument zurück erwarten (unter Verwendung der dataType Option) oder wenn Sie den Daten-Typ nicht spezifiziert haben und der Server es trotzdem korrekt als XML sendet (in diesem Fall wird jQuery raten und Ihnen responseXML anstelle von responseText zurückgeben), sollten Sie in der Lage sein, folgendes in Ihrer Erfolgs-Rückruffunktion zu verwenden, um ein Array von Arrays von Strings aus dem XML zu extrahieren, wobei data ein XML-Dokument ist:

$(data).find("ArrayOfString").map(function()
{
    return $(this).find('string').map(function()
    {
        return $(this).text();
    });
});

0voto

Alexx Roche Punkte 2877

Ihre Frage scheint nicht gut mit ihrem Titel übereinzustimmen, aber nachdem ich sie ein paar Mal gelesen habe, denke ich, dass die Antwort wäre, (in Javascript):

var JSONstring = '{"something":"like this"}';
var newArray = JSON.parse(JSONstring);

Funktioniert in Firefox 15.0.1

Der jQuery-Weg ist:

 newArray = $.parseJSON(JSONstring);

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X