我有一个引导程序选择,我想以编程方式更改该值。就像这样:
<select class="form-control selectpicker" id="testpicker" data-lastselected="Ketchup">
<option>Mustard</option>
<option selected="">Ketchup</option>
<option>Relish</option>
</select>
要更改它,我使用以下功能:
$('#testpicker').selectpicker('val', value to change);
我正在听它的变化:
$('select').on("change", function() {}
在change函数中,我有一条if语句,询问用户是否真的要更改该选项并继续执行该过程:
if (!confirm("Sure you want to change to " + $('#testpicker').val())) {
$('#testpicker').selectpicker('val',
$('#testpicker').data('lastselected'));
} else {
$('#testpicker').data('lastselected', $('#testpicker').selectpicker('val'));
}
因此,当用户对确认的响应被取消时,bootstrap-select将进入无限循环,并始终显示确认对话框,直到用户接受它为止。
您可以here对其进行检查。
我曾经解决此问题的方法 -更改值,请使用:
$('#testpicker').val(value to change).selectpicker('refresh');