如何使用 Meteor / 空格键预选多个选项
How to preselect multiple option with Meteor / spacebar
有我想要的:
用户会说语言 3 和 2。
<select multiple>
<option>language 1</option>
<option selected>language 2</option>
<option selected>language 3</option>
</select>
为此,我有:
<select multiple>
{{#each isoLangs}}
<option>{{isoLang}}</option>
{{/each}}
</select>
和
Template.profile.helpers({
isoLangs: function(){
return [[...]]; // each line of the array is like this : {tag: aTag, name: aName}
},
isoLang: function(){
return this.name;
}
});
而且,在会话值中,我有一个标签数组,其中包含口语标签。
知道我的数组 isoLangs 与特定用户没有直接关系,我如何 link 有效地 link 添加 "selected" 选项的那些数据?
谢谢
您可以使用 _.map
(docs):
isoLangs: function(){
var selectedname = this.name;
return _.map([....], function(doc) {
if(selectedName == doc.name) doc.selected = true;
return doc;
}
}
你的html:
<select multiple>
{{#each isoLangs}}
{{#if selected}}
<option selected>{{name}}</option>
{{else}}
<option>{{name}}</option>
{{/if}}
{{/each}}
</select>
有我想要的:
用户会说语言 3 和 2。
<select multiple>
<option>language 1</option>
<option selected>language 2</option>
<option selected>language 3</option>
</select>
为此,我有:
<select multiple>
{{#each isoLangs}}
<option>{{isoLang}}</option>
{{/each}}
</select>
和
Template.profile.helpers({
isoLangs: function(){
return [[...]]; // each line of the array is like this : {tag: aTag, name: aName}
},
isoLang: function(){
return this.name;
}
});
而且,在会话值中,我有一个标签数组,其中包含口语标签。
知道我的数组 isoLangs 与特定用户没有直接关系,我如何 link 有效地 link 添加 "selected" 选项的那些数据?
谢谢
您可以使用 _.map
(docs):
isoLangs: function(){
var selectedname = this.name;
return _.map([....], function(doc) {
if(selectedName == doc.name) doc.selected = true;
return doc;
}
}
你的html:
<select multiple>
{{#each isoLangs}}
{{#if selected}}
<option selected>{{name}}</option>
{{else}}
<option>{{name}}</option>
{{/if}}
{{/each}}
</select>