2010-07-30 65 views
0

我想知道是否有辦法從ajax成功獲取「事件」?例如:從ajax成功獲取「事件」

UPDATE:

$.ajax({ 
     type: "GET", 
     url: "/home/PersonInfo", 
     dataType: "json", 
     success: function(data) { 
     // I would like to use "data" like data.name, is this possible?  
     } 
    }); 

function MyEvents(start, end, callback) { 
    $.ajax({ 
     type: "GET", 
     url: "/home/GetInfo", 
     dataType: "json", 
     success: function(data) { 
      alert(data[0].start); 
      var events = []; 

      var meeting = new Date((data[0].start).getFullYear(), 
         (data[0].start).getMonth(), 
         (data[0].start).getDate()); 

      while (meeting <= data[0].end) { 
       events.push({ 
        id: data[0].id, 
        title: data[0].title, 
        start: new Date(meeting.valueOf()), 
        allDay: false 
       }); 
       // increase by one week 
       meeting.setDate(meeting.getDate() + 7); 
      } 
      callback(events); 
     } 
    }); 
} 

數據[0]。開始).getFullYear()不是一個函數? 這是json返回:[{「start」:1277985600,「end」:1278158400}] 任何人都可以幫忙嗎?

+0

是的,這可能取決於返回的數據。 – Reigel 2010-07-30 02:17:27

+0

那麼我會如何實現這一目標? – hersh 2010-07-30 02:20:59

回答

3

你應該工作的代碼,假設/home/PersonInfo給你這樣的有效的JSON:

{"name":"My Persons Name"} 

然後data.name將在你的回調"My Persons Name"

作爲便箋,Firebug/Chrome的開發人員工具應該允許您查看實際的請求並將返回的JSON看作一個對象。另外,他們爲您提供方便的調試實用程序,例如console.dir(data)以打印出數據。

+0

我以前試過,data.name是未定義的。但我正在閱讀「getJSON」並嘗試使用數據[0] .name給我提供了正確的數據。我想知道爲什麼? – hersh 2010-07-30 02:49:50

+0

看看你正在返回的JSON,它可能是'[{「name」:「我的人名」}]' – gnarf 2010-07-30 02:52:09

0

也許你必須使用JQueri.getJSON()方法,你可以在jQuery Docs找到文檔。

0

「/ home/PersonInfo」需要返回一個JSON對象。你的服務器端代碼是用什麼編寫的?

+0

我的服務器端代碼是用C#編寫的 – hersh 2010-07-30 02:32:22

+0

MVC或WebForms?如果您使用的是MVC,請查閱JsonResult。 – ThatSteveGuy 2010-07-30 02:37:35