Javascript 主干-为什么不将此渲染到我的html页面
为什么不使用backbone.js将其呈现到我的html页面 这是我的脚本Javascript 主干-为什么不将此渲染到我的html页面,javascript,jquery,backbone.js,Javascript,Jquery,Backbone.js,为什么不使用backbone.js将其呈现到我的html页面 这是我的脚本 <script type="text/javascript" src="/jquery-1.7.2.min.js"></script> <script type="text/javascript" src="/json2.js"></script> <script type="text/javascript" src="/underscore.js">&l
<script type="text/javascript" src="/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="/json2.js"></script>
<script type="text/javascript" src="/underscore.js"></script>
<script type="text/javascript" src="/backbone.min.js"></script>
<script>
(function ($) {
var ListView = Backbone.View.extend({
el: $('body'), // el attaches to existing element
events: {
'click button#add': 'addItem'
},
initialize: function () {
_.bindAll(this, 'render', 'addItem'); // every function that uses 'this' as the current object should be in here
this.counter = 0; // total number of items added thus far
this.render();
},
render: function () {
$(this.el).append("<button id='add'>Add list item</button>");
$(this.el).append("<ul></ul>");
},
addItem: function () {
this.counter++;
$('ul', this.el).append("<li>hello world" + this.counter + "</li>");
}
});
var listView = new ListView();
})(jQuery);
</script>
(函数($){
var ListView=Backbone.View.extend({
el:$('body'),//el附加到现有元素
活动:{
'单击按钮#添加':'添加项'
},
初始化:函数(){
_.bindAll(this'render',addItem');//使用'this'作为当前对象的每个函数都应该在这里
this.counter=0;//到目前为止添加的项目总数
这个。render();
},
渲染:函数(){
$(this.el).append(“添加列表项”);
$(this.el)。追加(“
”);
},
附加项:函数(){
这个.counter++;
$('ul',this.el).append(“你好世界”+this.counter+” ”;
}
});
var listView=new listView();
})(jQuery);
请更改
<script type="text/javascript" src="/Sunderscore.js"></script>
致:
如果这不起作用,请检查javascript库是否与此HTML位于同一目录中。您似乎有输入错误
<script type="text/javascript" src="/Sunderscore.js"></script>
你不是说
<script type="text/javascript" src="/underscore.js"></script>
??(下划线.js代替Sunderscore.js)假设您的下划线声明脚本在您正在测试的项目中是正确的,我会说您的el声明是错误的:
el: 'body',
然后你可以访问它(假设您使用jQuery使用$el而不是el。谢谢,但不是那样-当我复制并粘贴它以检查您的javascript库是否在正确的路径上时,这是一个错误。事实上,当我设置正确的库路径时,它就工作了。@Hello World检查它是否如您所期望的那样工作。我所做的唯一更改是从CDN.不要认为是这样,读bb source setElement:function(element,delegate){if(this.$el)this.undelegateEvents();this.$el=主干的元素实例。$?element:Backbone.$(element);this.el=this.$el[0];if(delegate!==false)this.delegateEvents();返回this;},
el: 'body',