使用Backbone.js创建表单

时间:2015-07-11 18:30:57

标签: backbone.js

假设我在Backbone.js中有以下文件:

  (function($){


        var FormLoanView = Backbone.View.extend({
          tagName: 'div',

          template: _.template('<% _.each(["Name","Address","Gender"],function(value) { %>' + 
            '<%= value %>' + ':<input></input><br>'  + '<% }); %>'),

          initialize: function(){
            var data = this.$el.html(this.template())
            $('body').html(data)
          }

        })


         $(document).ready(function () {

          var LoanView = new FormLoanView({
          });

        });
       })(jQuery);

这成功创建了我想要的表单。表格是3组输入,名为&#34;名称&#34;,&#34;地址&#34;和&#34;性别&#34;。这个表单最终将发出一个AJAX请求。无论如何我的问题是如何处理Backbone中的表单。目前我的模板中目前有一个数组["Name","Address","Gender"]。我这样做只是为了确保我得到了正确的想法。

我应该将这些数据放在模型中吗?我被困在这里,因为我总是把模型视为动态数据,这些数据将保持静态。如果不是,我怎么能包括这个视图?任何其他建议表示赞赏。我还想在initialize中使用jQuery来设置它。这对一个坏主意是对的吗?我应该为更动态的html内容保留jQuery / DOM操作,并使用_.template作为我网页的静态元素?

1 个答案:

答案 0 :(得分:0)

  

我应该将这些数据放在模型中吗?

是的,你应该。

  

我被困在这里,因为我总是把模型视为动态数据,这些数据将保持静态。如果不是,我怎么能包括这个视图?

好吧,如果您的视图(表单)只是用于捕获数据,则不必如此。

您要做的是创建attritube并使用model.save提交数据。