2013-04-10 84 views
0

我试图创建基于flotr2每5秒更新一次的图表页面。但我有一些问题,从服务器返回的,我得到如何通过ajax获取json数据

[object, Object],[object, Object],[object, Object],[object, Object],[object, Object],[object, Object],[object, Object] 

JavaScript的样子:

function updateFunc() { 

     new Ajax.Request('http://localhost:53083/Home/Data', { 
      method: 'get', 
      onSuccess: function (transport) { 
       var json = transport.responseText.evalJSON(); 
       alert(json); 
      } 
     }); 
    } 

    updateFunc(); 

而且asp.net/c#样子:

 // 
     // GET: /Home/Data 

     public string Data() 
     { 
      dt.Rows.RemoveAt(0); 

      dt.Rows.Add(rand.Next(1, 50)); 

      return JsonConvert.SerializeObject(dt); 
     } 

dt只是一个静态数据表,我删除第一个并添加一个新的,创建一个持续更新的感觉。

出了什么问题?张贴的所有我得到的是从警报[object, Object]

回答

2
  1. 您需要更改响应的媒体类型,说它是JSON,所以客户端将正确地解释它:(供参考,以正确的类型见here

    Response.ContentType = "application/json"; 
    

  2. 看来JsonConvert不知道如何序列化dt的类型。可以更改为可串行化的 类型,也可以告诉它如何序列化该类型:请参阅JSON.Net documentation