html如何接收java后台传递来的字符串或者json串,我有后台的图片,请看看图片帮忙写一个html前台。谢谢!
我后台的json字符串的值是:{"zhangsan”:true},当然您也可以写一个接收这个true的html前台页面。谢谢!我在网上找的答案都不全。...
我后台的json字符串的值是:{ "zhangsan”:true} ,当然您也可以写一个接收这个true的html前台页面。谢谢!我在网上找的答案都不全。
展开
4个回答
展开全部
你可能有点搞混了。
你的dataType:html,的话是无法接收后台传的json串的。
由于你后台return "wanglongtest.html",所以前台ajax接收是一个
html对象,则前台可以按如下代码处理:
success: function(rs){
$("#testDiv").html(rs);
}
html:
<!-- ajax 要填充的内容 -->
<div id="testDiv">
</div>
------------------------------------
如果你想接收后台的类型为json,那么后台servlet方法中只需要return null;
完整代码见如下:
response.setHeader("pragma", "no-cache");
response.setHeader("cache-control", "no-cache");
//设置响应格式和字符集(与前端页面一致,否则会有乱码问题)
response.setContentType("text/html;charset=GBK");
PrintWriter out = response.getWriter();
Map model = new HashMap();
model.put("zhangsan",true);
JSONObject json = new JSONObject(model); //将一个map对象实例化成一个json对象
out.write(json.toString());
out.flush();
out.close();
return null;
前台js:
$.ajax({
type: "POST",
url: "请求地址",
dataType: "json", //指定请求的数据类型
data:"type=1", //传到后台的参数,后台可以通过request.getParameter("type")获取
success:function(rs){
alert(rs.zhangsan); //我这里以弹出框的方式显示zhangsan对应的value
//也可以为html中的标签赋值
$("#testAjax").val(rs.zhangsan);
}
},"json")
});
html:
<input id="testAjax" type="text" value="" />
其实楼上的同学们已经大概说清了如何处理,我这里只是帮你进一步理清dataType:html和dataType:json的具体处理方式,如有疑问可留言。
你的dataType:html,的话是无法接收后台传的json串的。
由于你后台return "wanglongtest.html",所以前台ajax接收是一个
html对象,则前台可以按如下代码处理:
success: function(rs){
$("#testDiv").html(rs);
}
html:
<!-- ajax 要填充的内容 -->
<div id="testDiv">
</div>
------------------------------------
如果你想接收后台的类型为json,那么后台servlet方法中只需要return null;
完整代码见如下:
response.setHeader("pragma", "no-cache");
response.setHeader("cache-control", "no-cache");
//设置响应格式和字符集(与前端页面一致,否则会有乱码问题)
response.setContentType("text/html;charset=GBK");
PrintWriter out = response.getWriter();
Map model = new HashMap();
model.put("zhangsan",true);
JSONObject json = new JSONObject(model); //将一个map对象实例化成一个json对象
out.write(json.toString());
out.flush();
out.close();
return null;
前台js:
$.ajax({
type: "POST",
url: "请求地址",
dataType: "json", //指定请求的数据类型
data:"type=1", //传到后台的参数,后台可以通过request.getParameter("type")获取
success:function(rs){
alert(rs.zhangsan); //我这里以弹出框的方式显示zhangsan对应的value
//也可以为html中的标签赋值
$("#testAjax").val(rs.zhangsan);
}
},"json")
});
html:
<input id="testAjax" type="text" value="" />
其实楼上的同学们已经大概说清了如何处理,我这里只是帮你进一步理清dataType:html和dataType:json的具体处理方式,如有疑问可留言。
参考资料: 个人经验
展开全部
你前后台代码就没有对应起来。取到值就怪了。
注意你ajax中的参数传递、ajax的url是否映射正确了。
注意你ajax中的参数传递、ajax的url是否映射正确了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-11-23
展开全部
传给JSP, 用request.setAttribute();传呗,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-11-23
展开全部
你是用ajax做的么
?
$.ajax({
url : "${rootUrl}traffic/check.service",
type : "GET",
data : "type=1",
dataType : "html",
success:function(msg){
$("#resultXml").html(msg);
},
error:function(msg){
$("#resultXml").html("请求失败");
}
});
?
$.ajax({
url : "${rootUrl}traffic/check.service",
type : "GET",
data : "type=1",
dataType : "html",
success:function(msg){
$("#resultXml").html(msg);
},
error:function(msg){
$("#resultXml").html("请求失败");
}
});
更多追问追答
追问
不管你用什么都可以,我希望要仔细一点的答案,其实写一个这个也很快的。但是我不知道怎么写。我用jquery写了,但是得不到值。你可以写详细点吗?如*****
追答
getXmlStr(),是你页面调用的函数,msg就是从后台返回的数据,url就是请求地址,data,就是请求参数
function getXmlStr(){
$.ajax({
url : "${rootUrl}traffic/check.service",
type : "GET",
data : "type=1&xml=yes",
dataType : "html",
success:function(msg){
$("#resultXml").html(msg);
},
error:function(msg){
$("#resultXml").html("请求失败");
}
});
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询