私はバックボーンにかなり慣れていないので、ASMX Webサービスから供給されるオートコンプリート機能を作成しようとしています。私が抱えていると思われる問題は、WebサービスがJSONで返される間(それとの苦しい戦いの後)、応答を「d」(データセット)でラップすることです。これを理解し、正しいデータを取得するビューを取得するにはどうすればよいですか?
これが私のコードです:-
var Airline = Backbone.Model.extend({
initialize: function () {},
defaults: {
name: 'Airline Name',
rating: 50,
icon: '/blank.png'
}
});
var AirlineCollection = Backbone.Collection.extend({
model: Airline,
contentType: "application/json",
url: '/ControlTower/public/runway.asmx/all-airlines',
parse: function (response) {
return response;
}
});
var SelectionView = Backbone.View.extend({
el : $('#airline'),
render: function() {
$(this.el).html("You Selected : " + this.model.get('AirlineName'));
return this;
},
});
var airlines = new AirlineCollection();
airlines.fetch({async: false, contentType: "application/json" });
var airlineNames = airlines.pluck("AirlineName");
$("#airline").autocomplete({
source : airlineNames,
minLength : 1,
select: function(event, ui){
var selectedModel = airlines.where({name: ui.item.value})[0];
var view = new SelectionView({model: selectedModel});
view.render();
}
});
誰かが私が間違っていることを見ることができますか? ここに座っている時間が長すぎます!
助けていただければ幸いです;)