Boostrap-select无法与Asp.Net Core配合使用

时间:2019-05-24 23:51:33

标签: asp.net-core bootstrap-select

我正在使用Asp.Net Core 2.2 + Bootstrap 3.3.7。另外,我正在使用bootstrap-select库来使下拉列表看起来更好。尝试使用多个下拉菜单配置时,我遇到了一个非常奇怪的问题:

这是下拉代码:

@Html.ListBox("Roles", userRoles,
new
{
    id = "Roles_" + @user.Id,
    data_selected_text_format="count > 2",
    data_header="Modify roles",
    data_actions_box="true",
    data_size="5",
    data_width="100%",
    data_live_search = "true",
    @class="selectpicker"
})

我有一个包含上面下拉列表的表格。如果我不使用selectpicker类,则将角色数组正确绑定到模型中的int[]数组。如果我使用此类,那么无论尝试如何,我总会得到null。而且很奇怪的是,如果我在下拉菜单中选择了一些项目,可以通过使用jquery检查下拉菜单值是否为null来看到,如下图所示,这对我来说意味着bootstrap- select也按预期工作。

有人知道这段代码可能是什么问题吗?

谢谢!

image

在另一个地方,我使用此代码,该代码与上面提供的代码相似,但是使用Asp.Net Core剃刀语法并且可以正常工作:

<select asp-for="Roles" 
    asp-items="@roles" 
    class="form-control selectpicker" 
    multiple 
    data-live-search="true"
    data-selected-text-format="count > 2"
    data-header="Add roles"
    data-actions-box="true"
    data-size="5"
    data-width="100%"></select>

2 个答案:

答案 0 :(得分:-1)

原来,我的表格位于模态上,而这些模态位于tr内。似乎表单弄乱了,我将表单移到tr之外后,一切正常。

答案 1 :(得分:-1)

元素的嵌套可能存在一些问题。

当您将模态与表单一起使用并且没有正确嵌套它们时。可能发生以下情况:-

1)表格可能超出模态范围。部分或可能已满。 2)元素的大小和位置可能不符合预期。

还有许多其他事情可能发生。尝试将元素正确嵌套。

告诉我是否有效。