【问题标题】:Chosen with width equal to the largest option选择宽度等于最大选项
【发布时间】:2015-04-01 19:37:05
【问题描述】:

我正在尝试使带有 JQuery-Chosen 的 DropDownList 像所有其他“正常”DropDownLists 一样做出反应,匹配宽度等于 DDL 上的最大选项。 我尝试了一些不同的方法来完成这项工作,使用 css 和 JQuery,但我尝试的所有方法都变得丑陋。

在Chosen的官方页面http://harvesthq.github.io/chosen/options.html,上面写着:

Chosen 选择框的宽度。默认情况下,Chosen 会尝试匹配您要替换的选择框的宽度。如果在实例化 Chosen 时选择隐藏,则必须指定宽度,否则选择将以 0 的宽度显示。

有什么办法可以解决这个问题?

工作区:http://jsfiddle.net/cdtn0ko7/

$('.chosen').chosen({
    width: 'auto'
});

【问题讨论】:

  • 我删除了{width: 'auto'},它起作用了。如果这就是你想要的,那就是。 编辑没关系,它会占用整个区域的宽度。
  • 小修复,现在加载引导选择:jsfiddle.net/5yL5qy8o

标签: javascript jquery css jquery-chosen


【解决方案1】:

试试这个尺寸。 :D
Fiddle

$('.chosen').chosen();
.form-control {
  width: auto;
}

【讨论】:

  • 很好,但我不知道是不是因为我使用的是 ASP.NET,但这对我来说并不奏效。 =(我现在发生了什么:img.ctrlv.in/img/15/04/01/551c5474d348d.png
  • @Luisao 如果 DDL 不能进一步向右扩展,它就不会。我不知道右边是否还有更多空间。 asp.net 也喜欢搞乱格式。我在工作中经常使用 Bootstrap。
  • 我刚刚链接了 SS,以表明你的建议在 JSFiddle 上有效,但在我的工作区(我正在使用 asp.net)中无效。我也在使用Bootstrap,它上面的css是bootstrap-chosen。 DDL 有足够的空间,它的宽度与我选择的第一个选项相匹配。
【解决方案2】:

不确定我的问题是否正确,但是由于您使用的是 Bootstrap,因此您可以在 css 上执行以下操作:

.chosen-drop {
  position: inherit !important;
}

【讨论】:

    【解决方案3】:

    我尝试使用以下代码并且它有效,请查看:

    $('.chosen').chosen({
        width: '100%'
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-13
      • 2023-03-23
      • 1970-01-01
      • 1970-01-01
      • 2011-02-05
      • 1970-01-01
      • 2014-11-10
      • 2019-04-21
      相关资源
      最近更新 更多