语义 UI:多 Select 下拉列表前 select 值

Semantic UI: Multi Select Dropdown pre-select values

我正在使用语义 UI 框架构建网页。我是 UI 框架和 jquery 的新手。我正在为用户使用 select 角色的多 select 下拉组件。我能够实现下拉菜单和 select 值。

但是谁能帮我为下拉菜单设置一个默认值(selected)?我已经尝试了指定的行为 here ,但不知何故无法让它发挥作用。我在这里缺少什么吗?

这是 fiddle 和代码。

我的HTML:

<div class="twelve wide field">
    <label style="width: 250px">Add roles to user</label>
    <select name="skills" multiple="" class="ui fluid dropdown">
        <option value="">Roles</option>
        <option value="Role1">Role 1</option>
        <option value="Role2">Role 2</option>
        <option value="Role3">Role 3</option>
    </select>
</div>

我的JavaScript:

$(".ui.fluid.dropdown").dropdown({ allowLabels:true})
$('.ui.fluid.dropdown').dropdown({'set selected': 'Role1,Role2'});

此外,我能否获得有关将值提取到 javascript 中的变量的帮助?

你的语法有点不对劲。试试这个:

$('.ui.fluid.dropdown').dropdown('set selected',['Role1','Role2']);

添加关于所有 select 的值 (<option selected="selected">) 下拉语义:

$("select").each(function(){
            var $that = $(this);
            var values = $that.val();
            $("option", $that).each(function(){
                $(this).removeAttr("selected");
            });
            $that.dropdown('set selected', values);
            $("option", $that).each(function(){
                var curr_value = $(this).val();
                for(var i = 0; i < values; i++){
                    if(values[i] == curr_value){
                        $(this).attr('selected','selected');
                    }
                }
            });
        });

嗯,我相信有一个更好的选择select全部。

$('.selectAll').click(function(){
        $dropdown.find('option').each(function(){
            var $option = $(this);
            if ($option.val() === "") {
                return;
            }
            $dropdown.dropdown('set selected', [$option.val()]);
        });
    });