日期:2014-05-16  浏览次数:20362 次

ajax传送json格式值的问题
$.ajax({
  type: "get",
  url: "WebForm1.aspx",
  dataType: "json",
  success: function (data) {
  alert(data);

  },
  error: function () {

  }
  });
为什么data不能正确显示?显示[object,Object],[object,Object]?传送的值已在后台处理成json格式了。有没有办法变成能用的json格式?

------解决方案--------------------
显示[object,Object],[object,Object]说明data对象已经是一个JSON数组了,可以遍历这个JSON数组并显示:
JScript code
success: function (data) {
    for (i in data) {
        for (var j in data[i]) {
            alert(j + ':' + data[i][j]);
        }
    }
}

------解决方案--------------------
上面的遍历只是假设你的json数组结构为[{k:v, k:v}, {k:v, k:v}],实际可能还是不能取到最终的值,把你的JSON数组实例发上来吧。(通用的遍历也可以通过递归的方法来实现)
------解决方案--------------------
数据源?JSON不就是一个数据源么,只不过它的格式是它自己的格式。data=eval(data) $(data).each(function(i){alert(data[i].property)})
------解决方案--------------------
楼主如果在用火狐浏览器开发的话,就可以用firebug插件查看的

alert(data); 替换成 console.log(data);

这样就可以看清data的面貌了