我需要使用backbone.js渲染一个select。但是它总是注入一个包装div?
不允许尝试设置tagName: ''
。
var MuppetsListItemView = Backbone.View.extend({
tagName: '',//leads to error
render: function() {
this.$el.html('<option id="'+this.model.get('id')+'">'+this.model.get('key')+'</option>');
return this;
},
如果我想自己完全处理HTML,我怎么能实现这一点,没有主干干扰并添加div?
或者,如果有人能够解释如何在将标记设置为<option>
时将骨干注入tagName:
标记的骨干进行渲染,那么这也很棒。 (我的意思是,我必须做什么,主干在选项标签中“自动”注入HTML中的ID和KEY(但不使用任何模板系统))。谢谢!
答案 0 :(得分:3)
您希望id
使用var MuppetsListItemView = Backbone.View.extend({
tagName: 'option',
attributes: function() {
return {
id: this.model.get('id'),
};
},
...
,只需使用模板设置正常的选项内容即可。
http://backbonejs.org/#View-attributes http://backbonejs.org/#View-template
select sil.[Posting Date],
mre.[Service Item No_],
sil.[Job Code],
max(mre.[Reading]) as 'Hour Reading'
from [$meter reading entry]mre left outer join
[$service invoice line]sil on mre.[Service Item No_] = sil.[Service Item No_]
where sil.[Job Code] = 200
group by mre.[Service Item No_], sil.[Job Code], sil.[Posting Date]
如果您不熟悉使用Backbone视图的模板,请参考以下指南:http://codebeerstartups.com/2012/12/how-to-use-templates-in-backbone-js-learning-backbone-js/