Select2未加载到模板中。 [流星+火焰]

时间:2018-04-30 14:42:46

标签: javascript meteor ecmascript-6 jquery-select2 meteor-blaze

在标记问题重复之前,我想明确表示我已经尝试了所有可能的方法(例如here),只需在Meteor的简单页面上加载select2下拉列表。

以下是了解我的select2申请程序的简单代码。

ManageRoles.js

Template.ManageRoles.onRendered(function() {
    $(".roleSelect").select2();
});

ManageRoles.html

<form class="assignRoleForm">                              
    <div class="row">
        <div class="col-sm-12">
            <label>Roles</label>
            <select class="roleSelect form-control" multiple="multiple" required>
                <option value="">Select Option</option>
                <option value="1">ADMIN</option>
                <option value="2">MANAGER</option>
            </select>
        </div>
    </div>
    <br/>
    <div class="text-center">
        <button type="submit" class="btn btn-success">  Assign  </button>
        <button type="button"  class="btn btn-danger"> Close </button>
    </div>
</form>

select2导入结构

root\client\vendor\select2\select2-bootstrap.css
root\client\vendor\select2\select2.js
root\client\vendor\select2\style\select2.css

以下是当前输出的快照。

enter image description here

****************** 已更新 *******************

执行此操作console.log($('.roleSelect').get(0));时,我会在控制台日志中找到以下内容

<select class="roleSelect form-control" multiple="multiple" required="">
    <option value="">Select Option</option>
    <option value="fov9sPjiXtbRdJccR">ADMIN</option>
    <option value="ga4p3FwQ76LH4Nq8y">MANAGER</option>
</select>

1 个答案:

答案 0 :(得分:0)

我会尝试以下操作:

Template.ManageRoles.onRendered(function() {
    this.$(".roleSelect").select2({
    placeholder: 'Select Option'
  });
});

然后在HTML中将第一个选项留空:

<option value=""></option>