我試圖調用loadPhotos,但是我得到一個錯誤,提示loadPhotos沒有被定義。我試過this.loadPhotos();
,但後來發現一個錯誤,說對象沒有這樣的方法。我在這方面很新穎,仍然試圖弄清楚什麼可以訪問什麼,以及如果有人能指出我正確的方向,我將不勝感激。我究竟做錯了什麼?
這裏是我的代碼:
Album = Backbone.Collection.extend ({
model: Photo,
url: "/api/",
albumName: "",
initialize: function(models, options){
options || (options = {});
if (options.title) {
this.albumName = options.title;
};
$.ajax({
type: "GET",
url: this.url,
data: "album=" + this.albumName,
dataType: "json",
success: function(data){
console.log(data);
loadPhotos(data); // <<< the problem is right here
},
error: function(jqXHR, textStatus, errorThrown){
console.log("FETCH FAILED: " + errorThrown);
}
});
},
loadPhotos: function(filenames){
for (var i = 0; i < filenames.length; i++){
var photo = new Photo({fileurl: filenames[i] });
var photoView = new PhotoView({ model: photo});
this.add(photo);
}
}
});
很好解釋,謝謝! – Dmitry 2013-05-04 17:37:33
實際上,設置'$ .ajax'上下文的_easiest_方法就是設置'context'選項...... – Alnitak 2013-05-04 20:29:24