js接受response的问题 我在服务器端response.write(json对象); 10
那我在html页面要怎么通过js来接受到这个json求具体代码~我页面提交一个到服务器然后服务器返回然后页面解析然后显示(返回的是数组)...
那我在html页面要怎么通过js来接受到这个json求具体代码~我页面提交一个到服务器 然后服务器返回 然后页面解析然后显示(返回的是数组)
展开
4个回答
展开全部
你用什么方式获取?用ajax还是其他的。
你可以用隐藏域来接收也可以用ajax的回写值来接收服务器的返回值。
解析JSON可以用eval但是eval的效率比较低,会重新价值js引擎。
常用的还有另外一种
var list = new Function("return " + JSON字符串)();
这样也可以获取到JSON 对象。
你说的是返回的数组
for(var i = 0,len = list.length; i < len; i++)
操作。
如果你是静态页面那么应该是用ajax来获取的,在数据请求成功的回调函数里面就可以只有用上面的方法解析JSON了。
你可以用隐藏域来接收也可以用ajax的回写值来接收服务器的返回值。
解析JSON可以用eval但是eval的效率比较低,会重新价值js引擎。
常用的还有另外一种
var list = new Function("return " + JSON字符串)();
这样也可以获取到JSON 对象。
你说的是返回的数组
for(var i = 0,len = list.length; i < len; i++)
操作。
如果你是静态页面那么应该是用ajax来获取的,在数据请求成功的回调函数里面就可以只有用上面的方法解析JSON了。
追问
我现在要用netty来当服务器 大神你知道么?
追答
我不是做java的。我是做.net的。
但是应该没有什么区别吧。
我以前做过一点java用的是struts2
不管是那种技术。
页面页面肯定是可以向server端发送数据请求的。
然后server端处理相应数据。
jquery的话。
$.ajax({
type:"post",//或者是get请求
data:"",//发送的数据如果没有数据也可以不写
url:"", /*请求的路径 如果是struts2那应该是对应的action什么的*/
success:function(val){
var list = new Function("return " + val)();
//val可能包括单引号或者双引号或者回车符合或者其他的一些特殊符号。必须用正则表达式替换掉。
for(var i = 0,len = list.length; i < len; i++)
{
}
}
});
这样就可以了。
有不明白的再问。
展开全部
楼上已经说的很清楚了,方法有两种:
1、异步Ajax请求,在回调函数中可以获取到字符串形式的json串
2、同步请求,把服务端返回的值设置到一个隐藏域中
通过以上两种方法获取到的都是字符串形式的Json串,通过eval函数可以转成Json对象
1、异步Ajax请求,在回调函数中可以获取到字符串形式的json串
2、同步请求,把服务端返回的值设置到一个隐藏域中
通过以上两种方法获取到的都是字符串形式的Json串,通过eval函数可以转成Json对象
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ajax
<html>
<head>
<script type="text/javascript">
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","这是你请求的路径",true);
xmlhttp.send();
}
</script>
</head>
<body>
<h2>AJAX</h2>
<button type="button" onclick="loadXMLDoc()">请求数据</button>
<div id="myDiv"></div>
</body>
</html>
<html>
<head>
<script type="text/javascript">
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","这是你请求的路径",true);
xmlhttp.send();
}
</script>
</head>
<body>
<h2>AJAX</h2>
<button type="button" onclick="loadXMLDoc()">请求数据</button>
<div id="myDiv"></div>
</body>
</html>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
想办法把这段json写到一个input里 可以设置为hidden
然后 var json = eval(getElementById('inputId').value);
就OK了
要不就写ajax 到后台去取
然后 var json = eval(getElementById('inputId').value);
就OK了
要不就写ajax 到后台去取
追问
大神有qq不- -求教
追答
349903700
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询