2

我在主干中有一个应用程序。在这个应用程序中,我获取了一个存储在我的服务器中的 json。出于某种原因,现在我不想从文件中获取 json,而是从 PHP 传递的数组(与 Json 相同的结构)中获取。我可以更改我的代码来做同样的事情吗?这是我的应用

var CombinationView = Backbone.View.extend({ 
    template: _.template($("#hotel-list-template").html()),
    initialize: function(){ 
        this.list = new HotelCollection([], { 
            url: 'includes/list.json' 
        }); 

        this.list.on("sync", this.listLoaded, this); 

        this.list.fetch(); 
    }, 
    render: function(){ 
        this.$el.html('Loading...'); 
        return this; 
    }, 
    listLoaded: function(){ 
        //code
    }
});

我存储到 php 中的 var 是$list_object

如何更改我的代码以获取对象而不是 url?

4

1 回答 1

2

那么你不能从 javascript 访问 PHP 变量。在获取一些信息之后,php 端已经完成了它的工作。有两种方法可以做任何你想做的事情。

创建一个集合:http ://backbonejs.org/#Collection

该集合将以 JSON 格式获取对象列表。然后将每个对象传递给模型类。这样,您可以获取对象列表,并从该列表中创建新模型。由于模型不会使用同步来获取。change应该触发一个事件。

您可以做的另一件事是获取特定对象。当指定一个对象时,它会向 php 服务器发送一个 ID。使用此 ID,您可以加载列表中的特定元素并将其解析为 JSON。

同样,从 JS 中,您只能从服务器或流中获取文件。Websocket 是在 javascript 中获得长寿命全双工套接字的唯一方法。

于 2013-07-04T16:04:54.680 回答