在ajax成功时,Jquery"THIS".myFuntionName不可用?但之前还好

mar*_*ith 0 javascript jquery

任何人都可以帮助,我有一个关键字这个问题..在进入ajax调用之前它可用但是在进入成功时.我的"这个"是可用的,但不包含相同的信息,即我希望调用的方法..这个例子显示我的意思..

我很感激任何帮助,this.isoDateReviver在做ajax之前可用..然后当成功到来时.. this.isoDateReiver是UNDEFINED

   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);
    }
}); 
Run Code Online (Sandbox Code Playgroud)

And*_*ock 5

因为成功函数在不同的范围内执行.

你需要做的:

var me = this;

$.ajax({
    // etc
success: function(msg) {
    var holidays = JSON.parse(msg.d, me.isoDateReviver);
Run Code Online (Sandbox Code Playgroud)