我是Ajax的新手,并且会想到有很多将数组从java传递到ajax的例子;但是,我找不到它们。我想将三个字符串传递给ajax,然后以HTML格式显示它们。我的java代码是:
System.out.println("Authenticated");
String json = new Gson().toJson(questionList);
response.setContentType("application/json");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(json);
ajax是:
dataType: "json";
alert(responseJson);
var result = $.parseJSON(responseJson); <-- this line fails
$('#question1').val(result.question1);
$('#question2').val(result.question2);
$('#question3').val(result.question3);
警报显示&#34;问题1是?,问题2是b ?,问题3是c?&#34;。
如何传递每个字符串以在HTML中显示。我怀疑我需要以不同的方式在java中构建数组,以及以不同的方式接收ajax中的结果;但是,我找不到一个适用的例子。我不想使用unstring,因为问题可能包含&#34;,&#34;或其他使用的分隔符。
答案 0 :(得分:1)
你从ajax获得的responseJosn
已被解析。无需再次解析它。它是Array
。所以JS代码就像:
dataType: "json"; //this line should not be here
alert(responseJson);
//var result = $.parseJSON(responseJson); <-- this line fails
$('#question1').val(responseJson[0]);
$('#question2').val(responseJson[1]);
$('#question3').val(responseJson[2]);