我正在尝试在后骨视图中添加一个简单的下拉(我在使用jquery的render方法中创建)。我可以看到选项列表(控制台)正在生成,但它没有附加到主#container div。
<html>
<head>
<script type="text/javascript" src="jquery-1.11.3.js"></script>
<script type="text/javascript" src="underscore-min.js"></script>
<script type="text/javascript" src="backbone.js"></script>
<script>
var DropdownView = Backbone.View.extend({
el: "#container",
initialize: function()
{
this.render();
},
render : function()
{
var data = ['volvo','mercedes','audi'];
var options = $("<select>");
options.attr({"id" : "drpdwn"});
var selectOption = $('<option>').val("select").text('select');
options.append(selectOption);
_.each(data,function(val){
var option = $('<option>').val(val).text(val);
options.append(option);
})
console.log(options);
console.log(this.$el);
this.$el.html(options);
}
});
var view = new DropdownView ();
</script>
</head>
<body>
<div id="container">
</div>
</body>
</html>
答案 0 :(得分:2)
构建DropdownView
时,#container
并不存在于DOM中。
在</body>
。
由于您已经在使用jQuery,因此您也可以使用
包装脚本$(document).ready()