选择 2 清除 'x' 按钮以设置默认值?

Select2 clear 'x' button to set default value?

是否可以在启用 allowClear 的情况下按 Select2 下拉菜单上的 "x" 按钮设置默认(预定义)值?

使用onchange事件。检查该值是否为空并将该值设置为任何预定义的值。

$("select").on("change", function (e) {
   if($(this).val()==""){
      $(this).val("predefined value");
   }
});

Select2 允许您将占位符与空字符串以外的 ID 相关联。

$("select").select2({
  placeholder: {
    id: "the_predefined_value",
    text: "The placeholder text"
  }
});

因此,当您单击 "x" 时,它会将值设置为 the_predefined_value 并显示占位符文本。您将需要 <option>valuethe_predefined_value 才能正常工作。

我在下面编写的代码对你有用,

$(".myselect").select2({
     placeholder: "Select a option",
     allowClear: true,
     width: '100%'
 }).off('select2:clear').on('select2:clear', (e) => {
     $(e.currentTarget).val("predefined value");
 });