2009-06-03 25 views
0

任何人都可以幫助,我有一個關鍵字問題..在進入ajax之前調用它的可用,但是當進入成功。我的「這個」是可用的,但不包含相同的信息,即我想調用的方法。此示例顯示我的意思。jquery「THIS」.myFuntionName在ajax成功時不可用?但之前確定

我很感激任何幫助,this.isoDateReviver在做ajax之前可用。 。然後當成功arives .. this.isoDateReiver未定義

var data = new Object(); 
data.year = this.today = new Date().getFullYear(); 

this.isoDateReviver("yes","yes");    //// THIS WORKS HERE 

$.ajax({ 
    type: "POST", 
    url: "MyService.aspx/GetHolidays", 
    data: JSON.stringify(data), 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function(msg) { 
     var holidays = JSON.parse(msg.d, 
     this.isoDateReviver);    // THIS DOES NOT WORK its undefined 

     Calendar.initalizeHolidays(holidays); 
    }, 
    error: function(msg) { 
     alert(error); 
    } 
}); 

回答

5

其因爲成功功能在不同的範圍內被執行。

你需要做的:

var me = this; 

$.ajax({ 
    // etc 
success: function(msg) { 
    var holidays = JSON.parse(msg.d, me.isoDateReviver); 
相關問題