Str*_*rnd 10 modal-dialog jquery-select2 twitter-bootstrap-3
我已经检查了其他线程,涵盖了这个问题,但这些解决方案都不适用于我.
我正在使用jquery 1.11.2,select2-4.0.0-beta.3和bootstrap-3.3.1
我的模态如下:
<div class="modal fade" id="addProductModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title">Add Product</h4>
</div>
<div class="modal-body">
{!! BootForm::openHorizontal(2,10)->action('/recipes/'.$recipe->id.'/product')->post() !!}
{!! BootForm::select('Produkte: ','product_list[]' , $products)->id('products') !!}
{!! BootForm::submit('Erstellen') !!}
{!! BootForm::token() !!}
{!! BootForm::close() !!}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Schließen</button>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->
Run Code Online (Sandbox Code Playgroud)
我想要调用$('#products').select2();
该插件在其他地方工作正常.但它被搞砸了一个模态:

更新:(不)在这里工作小提琴http://jsfiddle.net/Strernd/o0d3vtek/
Luí*_*ruz 25
您遇到的问题是,当Select2绑定到选择时,生成的跨度类似于:
<span class="select2 select2-container select2-container--default" dir="ltr" style="width: 100px;">
<span class="selection">
<span class="select2-selection select2-selection--single" tabindex="0" role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-expanded="false" aria-owns="select2-products-results" aria-labelledby="select2-products-container">
<span class="select2-selection__rendered" id="select2-products-container">Mein Produkt</span>
<span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span>
</span>
</span>
<span class="dropdown-wrapper" aria-hidden="true"></span>
</span>
Run Code Online (Sandbox Code Playgroud)
您会注意到硬编码width: 100px会强制文本被"拆分".你可能在想"为什么地狱?!" 而且肯定的回答是:你正在使用测试版.
您可以通过以下方式解决此问题
强制width: 100%使用以下CSS代码:
.select2-container {
width: 100% !important;
padding: 0;
}
Run Code Online (Sandbox Code Playgroud)
看看这个工作的jsfiddle(我col-xs在你的标签和另一个div中添加了一些类).请注意,只要您的文本宽度足够,此解决方案就可以正常工作.如果宽度小于文本你会遇到同样的问题,你需要调整CSS来添加overflow: auto;和text-overflow: ellipsis;
使用最新的稳定版本3.5.2,正如此jsfiddle所示,它正常工作.
当您想在模态中使用时,可以使用此链接select2:
$('#my-select').select2({
dropdownParent: $('#my-modal')
});
Run Code Online (Sandbox Code Playgroud)
span.select2-container {
z-index:10050;
}
Run Code Online (Sandbox Code Playgroud)
当你有select2模态之外时不起作用.
EDIT
我发现当select2在Bootstrap Modal中使用它们时,这将是一个更好的解决方案.
.select2-container--open{
z-index:9999999
}
Run Code Online (Sandbox Code Playgroud)
小智 5
我所做的是在页面上方添加此代码
span.select2-container {
z-index:10050;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20398 次 |
| 最近记录: |