我必须在我的servlet中使用json数组。
我想获取json数组值并使用ajax打印到jsp页面。
下面是代码
JSONArray htags = new JSONArray();
htags.add("#abc");
htags.add("#xyz");
htags.add("#emc");
htags.add("#netapp");
//top trends
JSONArray trends = new JSONArray();
trends.add("pass");
trends.add("horiz");
trends.add("software");
trends.add("banana");
jsp
我在这里收到错误消息。
$.ajax({
url : "SerlvetToJsp",
dataType : 'json',
error : function() {
alert("Error");
},
success : function(data) {
alert(data);
}
});
发布于 2013-09-10 14:24:14
看,如果你想把它从servlet传递到jsp,你不需要创建request
( ajax ),因为servlet和jsp
都存在于服务器side.You上,只需将json数组设置为请求属性或会话属性,并将其放入jsp并显示(使用循环)。不需要ajax。
如果您需要通过同步调用来获取数据:
在servlet中
PrintWriter out = response.getWriter();
out.println(htags);
我不会把另一个完整的例子搞得一团糟,请看这篇文章:How to send JSON array from server to client, i.e. (java to AJAX/Javascript)?
发布于 2013-09-10 15:52:32
尝尝这个
servlet代码
JSONArray htags = new JSONArray();
htags.add("#abc");
htags.add("#xyz");
htags.add("#emc");
htags.add("#netapp");
//top trends
JSONArray trends = new JSONArray();
trends.add("pass");
trends.add("horiz");
trends.add("software");
trends.add("banana");
response.setContentType("application/json");
response.setCharacterEncoding("utf-8");
String jsons = "["+htags+","+trends+"]"; //Put both objects in an array of 2 elements
out.print(jsons);
在你的jsp页面上
$.ajax({
url : "SerlvetToJsp",
dataType : 'json',
contentType:"application/json",
error : function() {
alert("Error");
},
success : function(data) {
var data1=data[0],
var data2=data[2],
alert(data1[0]);
}
});
发布于 2014-02-13 17:18:27
Servlet可以使用它将json数组或json对象发送到客户端。
JSONArray jsonArray = [{:}, {:}];
response.getWriter.write(jsonArray.toString());
在JSP页面中,此方法调用请求JSON到Servlet,并使用匿名函数(JSON.parse用于将字符串转换为json对象或json数组)方法捕获json数组或json对象。
$("button").click(function(){
$.get("ServletToJSP",function(data,status){
alert("Data: " + JSON.parse(data) + "\nStatus: " + status);
});
});
https://stackoverflow.com/questions/18711744
复制相似问题