# JavaScript/JSON Problem



## bygones (15. Mai 2007)

Hi,

ich kaempfe gerade an javascript / json / bzw JavaServlets rum.

In einem Servlet habe ich eine LinkedList<String>, die logischerweise mit Strings gefuellt wird.

mit hilfe der json library erstelle ich daraus ein JSON objekt das folgendermassen aussieht:


```
{"nextInput":"yes_no_dk","questions":"[Eine Frage, die andere, noch was]"}
```

mit einem avascript will ich nun die einzelnen Fragen anzeigen lassen also

Eine Frage
die andere
noch was

mein js code sieht so aus:


```
var response = data.questions;
for (var i = 0; i < response.length; i++) {
		answer.innerHTML += "<div class='answer'>" + response[i] + "</div>";
}
```
data ist das objekt das ich vom ajax aufruf erhalte.

nun bekomm ich aber folgende Ausgabe

E
i
n
e

F
r
a
g
e
....

d.h. response_ geht buchstabenweise durch, nicht satzweise, bzw einzelne eintraege des arrays.

auch versuche die einzelnen Fragen mit ' oder " zu flankieren fuehrte zum gleichen ergebnis

ich bin der meinung der fehler liegt im JavaScript, da mir sonst die anzeige (siehe JSON objekt) korrekt erscheint.

Weiss einer wie ich einen JSONArray in JS zu behandeln hab, damit es funkioniert ?

Danke
dbac_


----------



## Roar (15. Mai 2007)

also meiner meinung nach müsste das json so aussehen:

```
{
"nextInput":"yes_no_dk",
"questions":[
"Eine Frage", 
"die andere", 
"noch was"
]
}
```
die [ ] dürfen nicht von "" umschlossen sein, dafür müssten die einträge im array in "" stehen, sind ja strings.
womit/wie erstellst du das json?


edit:
also folgender code spuckt den richtigen json code aus:


```
List<String> list = new ArrayList<String>();
		list.add("tach");
		list.add("was");
		list.add("geht");
		JSONObject o = new JSONObject();
		o.put("huscha", "buscha");
		o.put("ugga", list);
		System.out.println(o.toString());
```


----------



## bygones (15. Mai 2007)

danke... so wies aussieht hab ich eine falsche lib benutzt... bzw die die in einem anderen projekt drin war...

werd ich mal schaun und ausprobieren


----------

