Backbone.js 显示backbonejs模型的获取结果
我试图以html形式显示单个模型的获取结果 以下是我的backbone.js部分:Backbone.js 显示backbonejs模型的获取结果,backbone.js,backbone-views,backbone-model,Backbone.js,Backbone Views,Backbone Model,我试图以html形式显示单个模型的获取结果 以下是我的backbone.js部分: window.Category = Backbone.Model.extend({ urlRoot : "../myWs/category/" }); window.CategoryView = Backbone.View.extend({ el : $('#category_details'), template : _.template($('#category-details').
window.Category = Backbone.Model.extend({
urlRoot : "../myWs/category/"
});
window.CategoryView = Backbone.View.extend({
el : $('#category_details'),
template : _.template($('#category-details').html()),
initialize : function() {
this.render();
},
render : function(eventName) {
$(this.el).html(this.template(this.model.toJSON()));
return this;
}
});
var category = new Category({
id : "067e6162-3b6f-4ae2-a171-240000000000"
});
var vategoryView = new CategoryView({
model : category
});
category.fetch();
我正在做的是:
<div id="category_details">details:</div>
<script type="text/template" id="category-details">
<label>Id:</label>
<input id="id" name="id" type="text" disabled />
<label>Name:</label>
<input type="text" id="name" name="name" value="<%= name %>"/>
</script>
详细信息:
身份证件:
姓名:
问题是数据没有以html显示。
如何以html格式显示数据?您的视图不会处理模型上的更改,这意味着在
model.fetch
完成时不会重新呈现视图
尝试从模型绑定更改事件:
window.CategoryView = Backbone.View.extend({
el : $('#category_details'),
template : _.template($('#category-details').html()),
initialize : function() {
this.render();
this.model.on('change', this.render, this);
},
render : function(eventName) {
$(this.el).html(this.template(this.model.toJSON()));
return this;
}
});
还有一个演示
请注意,下划线不喜欢被要求呈现未定义的变量,您可能应该为模型添加默认值:
window.Category = Backbone.Model.extend({
urlRoot : "../myWs/category/",
defaults: {
name: ''
}
});