下面是我的 javascript 文件的内容。
var inyavicsage = inyavicsage || {};
inyavicsage.TestClass = function () {
this.testProperty = null;
}
inyavicsage.TestClass.prototype = {
constructor: this,
testMethod: function () {
testClass = this;
$.post('test.php', function(data){
testClass.testProperty = data;
});
alert(testClass.testProperty);
}
}
var testClass = new inyavicsage.TestClass();
testClass.testMethod();
我希望“alert(testClass.testProperty)”语句应显示分配给“testClass.testProperty”的“data”变量的内容,而不是显示“null”。
问题是什么以及解决方案?
最佳答案
alert(testClass.testProperty)
显示 null
因为 post 请求是异步的。
所以基本上你是在属性被设置之前获得它的。 这将起作用:
$.post('test.php', function(data){
testClass.testProperty = data;
alert(testClass.testProperty);
});
关于javascript - 从类方法中的 ajax post 函数回调函数更改 javascript 类属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36840651/