读书人

关于javascript中回调函数(callback)中

发布时间: 2012-02-05 12:07:15 作者: rapoo

关于javascript中回调函数(callback)中this指针的问题

JScript code
function Test() {    this.sClassName = "Test";}Test.prototype.show = function(0 {        alert(this.sClassName);    // 正常显示Test    var callback = function() {        alert(this.sClassName); // 显示undefined,如何才能显示Test中的this.sClassName?    };        $.ajax({        success: callback    });    callback = null;};var test = new Test();test.show();


[解决办法]
JScript code
function Test() {    this.sClassName = "Test";}Test.prototype.show = function(0 {        alert(this.sClassName);    // 正常显示Test    var cn = this.sClassName;    var callback = function() {        alert(cn); // 这样写就可以    };        $.ajax({        success: callback    });    callback = null;};var test = new Test();test.show();
[解决办法]
要理顺上下文:
function Test() {
this.sClassName = "Test";
}

Test.prototype.show = function(0 {

alert(this.sClassName); // 正常显示Test
var This = this;
var callback = function() {
alert(This.sClassName); // 显示undefined,如何才能显示Test中的this.sClassName?
};

$.ajax({
success: callback
});

callback = null;
};

var test = new Test();
test.show();

读书人网 >JavaScript

热点推荐