Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在JS中获得多重选择_Javascript_Meteor_Html Select - Fatal编程技术网

Javascript 如何在JS中获得多重选择

Javascript 如何在JS中获得多重选择,javascript,meteor,html-select,Javascript,Meteor,Html Select,我知道这个问题已经发布了,但是 没有帮我。我尝试了前两种解决方案,但都不奏效 第一:我得到一个关于选项未定义的错误(无论我如何处理) 第二个:当我在研究meteor时,“this.val()”不是一个值,因为它不是指好的对象 编辑:这是我的代码 HTML: <select class="selectpicker show-tick" id="update-languages-1" data-selected-text-format="values"> {{#each isoLan

我知道这个问题已经发布了,但是

没有帮我。我尝试了前两种解决方案,但都不奏效

第一:我得到一个关于选项未定义的错误(无论我如何处理) 第二个:当我在研究meteor时,“this.val()”不是一个值,因为它不是指好的对象

编辑:这是我的代码

HTML:

<select class="selectpicker show-tick" id="update-languages-1" data-selected-text-format="values">
  {{#each isoLangs 1}}
    {{#if selected}}
  <option disabled selected>{{name}}</option>
    {{else}}
  <option>{{name}}</option>
    {{/if}}
  {{/each}}
</select>
你能给我建议另一种方法吗


感谢您

选择选项元素需要一个值=“attibute:

<select multiple class="selectpicker show-tick" id="update-languages-1" data-selected-text-format="values">
  {{#each isoLangs 1}}
    {{#if selected}}
  <option value="{{name}}" disabled selected>{{name}}</option>
    {{else}}
  <option value="{{name}}">{{name}}</option>
    {{/if}}
  {{/each}}
</select>
您的选项元素没有value属性。你应该加上它。之后,$select.val()将返回一个数组,其中包含所选选项中的值。不要忘记将“multiple”属性添加到select元素中(这允许选择多个选项),否则$select.val()将从所选选项返回唯一值(而不是作为值数组)。
Template.profile.events({
  'submit form': function(event, tmpl){
    [...]
    var learningLanguages = [];
    $('#update-languages-1 :selected').each(function(){
      learningLanguages.push($(this).val()); 
    });
    return false;
  }
});
<select multiple class="selectpicker show-tick" id="update-languages-1" data-selected-text-format="values">
  {{#each isoLangs 1}}
    {{#if selected}}
  <option value="{{name}}" disabled selected>{{name}}</option>
    {{else}}
  <option value="{{name}}">{{name}}</option>
    {{/if}}
  {{/each}}
</select>
var learningLanguages = $('#update-languages-1').val();