我在bootstrap模式中有一个select2框,我想更改select2框的值,但它不起作用。
我在之前的帖子和结果中尝试了每一个解决方案,但没有一个能让它发挥作用。
我使用select2 4.0.2,我测试过:
$('#select_id').val('val').trigger('change.select2');
$('#select_id').val('val').trigger('change');
$('#select_id').val('val').change()
它工作一到两次然后停止工作(随机)
只有当我将select2更改回3.x.x时才能正常工作
$('#select_id').val('val').trigger('change');
是正确的方式,请参阅here
$('#select_id').select2('val', selectedValue);
对于使用Ajax调用的Select2,我在很多选项上都很挣扎,但都没有用。然后我来到以下解决方案,其工作方式类似于charm $(“#select_id”)。html($(“”)。val('val')。text('text'))。trigger(“change”);
如果您像我一样为select2添加了自定义处理程序:选择事件,更改值并触发自定义select2事件的正确完整答案将是:
$('#select_id').val('val').trigger('change').trigger({
type: 'select2:event_name', // It worked for me with select2:selecting and select2:select
params: {
args: { // Only use 'args' if using select2:selecting, select2:select does not use it
data: varWithEventData
}
}
});