Estoy tratando de configurar un objeto para que tenga un método $ .getJSON encapsulado. Aquí está mi configuración:
function Property(price, deposit){
this.price = price;
this.deposit = deposit;
this.getMortgageData = function(){
$.getJSON('http://example.com/index?p='+this.price+'&d='+this.deposit+'&c=?', function(data){
this.mortgageData = data;
});
}
return true;
}
Ahora el problema parece ser que no tengo acceso a 'esto' dentro de la función de devolución de llamada getJSON que tiene sentido.
¿Hay alguna solución para este tipo de función o simplemente estoy pensando en esta manera totalmente incorrecta? Solo he codificado alguna vez usando PHP OO antes, así que JS OO es algo nuevo para mí.
Otras cosas que he probado son:
function Property(price, deposit){
this.price = price;
this.deposit = deposit;
this.getMortgageData = function(){
this.mortgageData = $.getJSON('http://example.com/index?p='+this.price+'&d='+this.deposit+'&c=?', function(data){
return data;
});
}
return true;
}
Pero aún así,
var prop = new Property();
prop.getMortgageData();
// wait for the response, then
alert(prop.mortgageData.xyz); // == undefined
Gracias, funcionó perfectamente. –
¡De nada! – kevingessner