backbone.js - 如何摆脱div? - 如何呈现选项?

时间:2015-10-31 03:33:14

标签: javascript backbone.js

我需要使用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(但不使用任何模板系统))。谢谢!

1 个答案:

答案 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/