Backbone.js 选择中使用主干集合的占位符
我有一个通过主干集合填充的选择框:Backbone.js 选择中使用主干集合的占位符,backbone.js,Backbone.js,我有一个通过主干集合填充的选择框: class Prog.Views.History extends Backbone.View template: JST['backbone/templates/shapes/history'] tagName: "option" initialize: -> @model.bind('change:formatted', @render, this); render: -> $(@el).html(@temp
class Prog.Views.History extends Backbone.View
template: JST['backbone/templates/shapes/history']
tagName: "option"
initialize: ->
@model.bind('change:formatted', @render, this);
render: ->
$(@el).html(@template(history: @model))
this
主干/模板/形状/历史
<option value="<%=history.get('origin')%>"><%=history.get('origin')%></option>
如何设置默认值?首先,我认为此实现无法正常工作,我认为渲染的结果如下:
<option><option value="the_origin">the_origin</option></option>
这里不需要模板
关于包含“请选择”选项
将HTML中直接硬编码的“请选择”选项元素包含到select元素中
然后不要使用this.$el.html()
来填充select,而是this.$el.append()
,这将尊重实际的默认选项,并在其后面添加动态元素
更新
例如,如果选择元素如下所示:
<select id="history"></select>
<select id="history">
<option value="0" selected="selected">Please select...</option>
</select>
让它看起来像这样:
<select id="history"></select>
<select id="history">
<option value="0" selected="selected">Please select...</option>
</select>
请选择。。。
当您使用
append
添加动态选项元素时,占位符选项元素将保留。您介意使用apped上添加的占位符更新您的示例吗?为此,我需要您使用呈现完整select元素并使用Traveltime.Views.History
子视图以呈现选项元素。准备好后在此线程中发出信号。