gpt4 book ai didi

javascript - 如何使用 bootstrap-select 在每个选择选项上添加工具提示

转载 作者:行者123 更新时间:2023-11-30 11:26:55 26 4
gpt4 key购买 nike

我正在尝试使用 bootstrap-select 将工具提示添加到每个选择选项。在我检查时,select-js 似乎将 select 标签转换为 ul。我不知道这是我的代码无法正常工作的原因。

html

<div class="form-group">
<label for="email">Network : </label>
<select id="basic" class="selectpicker form-control" >
<option value="0" data-toggle="tooltip" title="Finding your IMEI number">One</option>
<option value="1" data-toggle="tooltip" title="Next title" >Two</option>
<option value="2" >Three</option>
<option value="3">Four</option>
<option value="4">Five</option>
<option value="5">Six</option>
</select>
</div>

js

<script>
$(document).ready(function () {
var mySelect = $('#first-disabled2');

$('#special').on('click', function () {
mySelect.find('option:selected').attr('disabled', 'disabled');
mySelect.selectpicker('refresh');
});

var $basic2 = $('#basic2').selectpicker({
liveSearch: true,
maxOptions: 1
});
});
</script>

<script>
$(document).ready(function(){
$('[data-toggle="tooltip"]').tooltip();
});
</script>

最佳答案

更新时间 2021-06-25

似乎对于版本 1.13.x和更高的解决方案是使用:

$('#select').data('selectpicker').selectpicker.main.elements - 返回 li 的数组您可以使用的元素。

如该插件的 Github 问题页面所述:

https://github.com/snapappointments/bootstrap-select/issues/2561#issuecomment-787112874


Bootstrap-select创建新的 DOM 元素(<ul><li> s)以呈现下拉项。

您的代码的问题是工具提示附加到原始 option元素。但是它们必须附加到新创建的元素上。

但是,我们应该只在 Bootstrap-select 之后附加它们插件已初始化,因此我们可以利用 loaded.bs.select事件(来自插件文档:“此事件在选择初始化后触发。”- https://silviomoreto.github.io/bootstrap-select/options/#events)。

此外,该插件并未从 option 中复制所有属性元素,所以列表项不会设置 title属性。我们必须手动复制此属性。

为了找到插件创建的列表项,我们可以利用 .data('selectpicker')属性,附加到我们的原始 select元素,并包含我们需要的所有数据。列表项可在 .data('selectpicker').$lis 中找到对象。

请检查下面的代码:

$(document).ready(function () {

$('#basic').selectpicker({
liveSearch: true
// other options...
}).on('loaded.bs.select', function(e){

// save the element
var $el = $(this);

// the list items with the options
var $lis = $el.data('selectpicker').$lis;

$lis.each(function(i) {

// get the title from the option
var tooltip_title = $el.find('option').eq(i).attr('title');

$(this).tooltip({
'title': tooltip_title,
'placement': 'top'
});

});

});

});

fiddle :https://jsfiddle.net/61kbe55z/ .

关于javascript - 如何使用 bootstrap-select 在每个选择选项上添加工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47669038/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com