我正在使用下划线模板来呈现下拉选项。我想显示所选下拉选项的文本。这是我正在使用的模板:
<select id = "selectedRegion"><% _.each(data.region,function(field){ %><option value ="<%= field.id%>" ><%= field.name %></option>'
+' <% }) %></select><% }%>
我想知道如何在下划线中提及'选定'的attr。就像在html中一样:
<option value="N" selected>New york</option>
我试过这种方式,但没有运气
<select id = "selectedRegion"><% _.each(data.region,function(field){ %><option value ="<%= field.id%>" selected= <%= field.selected %> ><%= field.name %></option>'
+' <% }) %></select><% }%>
这是Js:
var regions = [];
var values = $('#selectedRegion').children('option').each(function(i, e){
regions.push({id:e.value, name:$(e).html(),select:$(e).is(':selected')?true:false});
});
任何人都对如何实现这一点有任何想法?
谢谢!
答案 0 :(得分:2)
你在哪里
selected= <%= field.selected %>
尝试
<%= (field.selected) ? "selected" : "" %>
如果该字段设置为true,则会输出selected
的值。
答案 1 :(得分:0)
试试这个JS:
var regions = [];
var values = $('#selectedRegion').children('option').each(function(i, e){
regions.push({id:e.value, name:$(e).html(),selected:$(e).is(':selected')?'selected':''});
});
这适用于您的模板:
'<select id = "selectedRegion"><% _.each(data.region,function(field){ %><option value="<%= field.id%>" <%= field.selected %> ><%= field.name %></option>'
+' <% }) %></select><% }%>
这将在每个selected
元素的regions
属性中按字面存储所需的HTML属性(“selected”),然后在模板中显示时将其输出。