Backbone从嵌套的json获取数据

时间:2015-10-16 05:04:50

标签: javascript json backbone.js nested

我的Json数组如下使用Backbone

提取Name和temp
{
  "message": "accurate",
  "cod": "200",
  "count": 10,
  "list": [
    {
      "id": 495260,
      "name": "Shcherbinka",
      "coord": {
        "lon": 37.559719,
        "lat": 55.499722
      },
      "main": {
        "temp": 274.72,
        "pressure": 1033,
        "humidity": 93,
        "temp_min": 272.04,
        "temp_max": 277.04
      },
      "dt": 1444968405,
      "wind": {
        "speed": 2,
        "deg": 300
      },
      "sys": {
        "country": ""
      },
      "clouds": {
        "all": 76
      },
      "weather": [
        {
          "id": 803,
          "main": "Clouds",
          "description": "broken clouds",
          "icon": "04d"
        }
      ]
    },

我的JavaScript如下:

<script>


      $(function() {
                var Profile = Backbone.Model.extend();

                var ProfileList = Backbone.Collection.extend({
                    model: Profile,
                    url: "http://api.openweathermap.org/data/2.5/find?lat=55.5&lon=37.5&cnt=10&appid=bd82977b86bf27fb59a04b61b657fb6f",     
                    parse : function(response){
                    weather_data = response.list
                    console.log(weather_data)
                        return weather_data;  
                   }   
                });   

                var ProfileView = Backbone.View.extend({
                    el: "#profiles",
                    template: _.template($('#profileTemplate').html()),
                    render: function(eventName) {
                        _.each(this.model.models, function(profile){
                            var profileTemplate = this.template(profile.toJSON());
                            $(this.el).append(profileTemplate);
                        }, this);

                        return this;
                    }
                });

                var profiles = new ProfileList();  
                profiles.fetch();
                var profilesView = new ProfileView({model: profiles});
                profiles.fetch({
                    success: function() {
                        profilesView.render();
                    }
                });

            });
        </script>

如何从Json上面获取Nametemperature,它们位于Json对象内的不同Json对象中

1 个答案:

答案 0 :(得分:1)

通过

  

如何从Json上方获取名称和温度

如果您打算访问&#39; name&#39;和&#39; temp&#39;,一旦在模型中设置,就可以按如下方式访问它们。

googlebot