选择2占位符问题

时间:2018-04-04 10:19:37

标签: javascript jquery asp.net-mvc-5 jquery-select2

我有一个Select2 Multiselect html元素。虽然不显示渲染占位符,但如果我选择并删除该项,则显示占位符。我不知道如何使它工作。请指教。

最初

enter image description here

选择时

enter image description here

删除项目后

enter image description here

enter image description here

代码:

@Html.DropDownListFor(m => m.Vendor, new SelectList(Model.Status), "Search Status", new { @id = "advanced-search-lsc-status", @class = "form-control", @multiple = "multiple", data_placeholder = "Select Status" })


$('#advanced-search-status').select2({
            minimumResultsForSearch: -1,
            placeholder: function(){
                $(this).data('placeholder');
            },
            width: '100%'
        });

3 个答案:

答案 0 :(得分:1)

刚刚发现错误,最初宽度设置为0,隐藏了占位符。

enter image description here

使用此jquery代码进行操作。

.select2-container--default .select2-search--inline .select2-search__field{
    width:initial!important;
}

现在可行了

enter image description here

谢谢你们。

答案 1 :(得分:1)

尝试

.select2-container .select2-search--inline:first-child {
    float: none;
}
.select2-container .select2-search--inline:first-child .select2-search__field{
    width: 100% !important;
}

答案 2 :(得分:0)

只需添加attr占位符

即可
$("#advanced-search-status").attr("placeholder", "Select Status");

$('#advanced-search-status').select2({
    placeholder: "Select Status"
});