js如何管理后台传来的数据 比如说传来一个list 怎么获取里面的值
2个回答
展开全部
使用xmlhttprequest发出请求到后台
创建xmlhttprequest对象不同浏览器略有不同,大致可以参考如下
/* Util Functions */
function createXmlHttpRequest() {
if (window.XMLHttpRequest) { //None-IE
return new XMLHttpRequest();
}
else {
return new ActiveXObject("Microsoft.XMLHTTP");
}
}
获得相应后把响应的数据直接付给变量
var xmlHttpRequest = createXmlHttpRequest();
xmlHttpRequest.open("GET", url_disk_list_full, false);
xmlHttpRequest.send();
if (xmlHttpRequest.status == 200) {
var result = eval("(" + xmlHttpRequest.responseText + ")");
//现在result里面就是这个列表了,可以直接使用
}
创建xmlhttprequest对象不同浏览器略有不同,大致可以参考如下
/* Util Functions */
function createXmlHttpRequest() {
if (window.XMLHttpRequest) { //None-IE
return new XMLHttpRequest();
}
else {
return new ActiveXObject("Microsoft.XMLHTTP");
}
}
获得相应后把响应的数据直接付给变量
var xmlHttpRequest = createXmlHttpRequest();
xmlHttpRequest.open("GET", url_disk_list_full, false);
xmlHttpRequest.send();
if (xmlHttpRequest.status == 200) {
var result = eval("(" + xmlHttpRequest.responseText + ")");
//现在result里面就是这个列表了,可以直接使用
}
追问
还得用这个啊 我之前用${list}也能获取到list的值 可就是没法调用他啊 怎么获取他里面的值 还有他的大小 size
追答
我这里其实有假设你的后台传来的这个list是JSON格式的,这个假设成立吗?你后台传来的list是什么格式的?还是你这里说的list实际上是HTML的一个片段?
你说你用${list}可以获得list的值,你是如何判断出你确实有获得${list}的值的?
Javascript里面list实际上就是array,所以取得它的size很简单,直接.length就好。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
推荐格式化为 JSON 字符串 ,然后前端 想办法解析。或者可以自定义一种数据格式:
例如:返回结果为 array( a=>1, b=> 2, c => 3); 后端格式化为:a=1,b=2,c=3
然后用js解析
var tmp = ret.split(','); //ret 为返回的字符串
var result = {};
for(var i =0; i< tmp.length; i++){
var t = tmp[i].split('=');
result[ t[0] ] = t[1];
}
最后的result即为结果集对象。
不过还是推荐用json 更规范。就是js需要另外的插件支持。
觉得有用的话,来我的 享笑网 看看吧。不清楚的可以在里面问我。
例如:返回结果为 array( a=>1, b=> 2, c => 3); 后端格式化为:a=1,b=2,c=3
然后用js解析
var tmp = ret.split(','); //ret 为返回的字符串
var result = {};
for(var i =0; i< tmp.length; i++){
var t = tmp[i].split('=');
result[ t[0] ] = t[1];
}
最后的result即为结果集对象。
不过还是推荐用json 更规范。就是js需要另外的插件支持。
觉得有用的话,来我的 享笑网 看看吧。不清楚的可以在里面问我。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询