未指定预定义 el 而不呈现的主干视图
Backbone views not rendering without predefined el specified
我正在尝试做的是创建可以在不删除父元素的情况下删除的视图。我发现当我直接在视图上设置 el
属性时,当我.remove()
它时,父元素也会被删除。
我尝试创建一个仅带有tagName
的视图,认为它会将其弹出body
,但事实并非如此,它似乎根本没有将其插入页面。
在不删除实际包含元素的情况下从元素中完全删除视图的正确方法是什么?
我不确定"父元素"是否el
.
var DemoView = Backbone.View.extend({
el: "#container",
events: {
"click button": "removeSelf"
},
render: function () {
this.$el.append("<button>remove</button>");
return this;
},
removeSelf: function () {
this.remove();
}
});
new DemoView().render();
如果点击按钮,#container
就会被删除;如果你不想删除#container
,就不要设置el
属性,DemoView会创建一个空div
,就像这样:
var DemoView = Backbone.View.extend({
events: {
"click button": "removeSelf"
},
render: function () {
this.$el.append("<button>remove</button>");
return this;
},
removeSelf: function () {
this.remove();
}
});
var demoView = new DemoView();
$("#container").append(demoView.render().el);
现在,如果您单击该按钮,演示视图将被删除,但#container
不会。
如果不指定默认 el,则必须稍后将它们附加到元素中,如 view.render().$el.appendTo('body')
. body 可以是指向容器元素的任何其他选择器。
相关文章:
- UI5:如何访问视图中定义的html元素
- TinyMCE保留预定义的html结构
- 如何在rails视图中定义gon变量(瘦文件)
- 如何设置方法,该方法只能删除元素的预定义值
- 未指定预定义 el 而不呈现的主干视图
- Javascript 函数未在部分视图上定义
- 网格视图自定义控件和 JavaScript 函数 c#
- 如何将返回响应的预定义 JavaScript 回调作为参数传递到函数中
- Angular.js可过滤列表,通过选择字段和可点击地图预定义值
- 无法在主干视图中定义两个事件
- 将预定义的HTML连接到主干中的模型和视图
- ui-sortable不工作(对于预定义的DOM位置)
- & # 39;这个# 39;没有在backbone.js视图中定义
- 由于异步函数延迟执行和完成,变量返回预定义值
- 添加“then"方法在预定义的“finally”之前放入$promise链中.方法
- jQuery UI滑块-有预定义的'
- 在主干视图中定义变量的最佳实践
- Moment() vs预定义的Moment()日期
- Safari扩展-改变预定义的Javascript变量值
- 为什么骨干视图没有定义?