我的页面上有2个selectpickers。 我希望能够在用户选择第一个选项时打开(向下滑动)第二个选择选择器。 这样做是为了帮助用户不要点击太多。
示例HTML:
<div class="row">
<select class="select-picker" id="picker1" data-size="10">
<option>Opt 1</option>
<option>Opt 2</option>
<option>Opt 3</option>
<option>Opt 4</option>
</select>
<select class="select-picker" id="picker2" data-size="10">
<option>Opt 2.1</option>
<option>Opt 2.2</option>
<option>Opt 2.3</option>
<option>Opt 2.4</option>
</select>
</div>
JS的例子:
$(document).ready(function() {
$('.select-picker').selectpicker();
$('.select-picker').change(function(){
// Trying to open 2nd selectpicker
$selectpickerButton = $('button[data-id="picker2"]');
$selectpicker = $selectpickerButton.parent();
//$selectpicker.addClass('open');
$selectpickerButton.click();
});
});
答案 0 :(得分:2)
以下工作,有点脏但是嘿!!
更新的答案
我使用了和以前一样的答案,但现在我设置了一个超时并在超时完成后调用了一个函数:
$('.select-picker').selectpicker();
var selectpickerButton = $('button[data-id="picker2"]');
$(document).on("change", "#picker1", function () {
setTimeout(function () {
// Do something after xx milli seconds
youSelected();
}, 100);
});
function youSelected() {
$(selectpickerButton).trigger('click');
}