如何将 select2 设置为特定值?

How to set select2 to a specific value?

我有一个网站。您可以在那里手动转到特定站点,也可以使用下拉菜单 (select2) 转到那里。 如果我手动去那里 (link),我想将下拉列表中的值更改为站点一。

这是我的 select2 代码:

$(function () {
  $("#siteSelect").select2().on("select2:select", function (e) {
   $("#siteSelect").val(-1).trigger("change");
        var id = $(this).val();
        var url = siteRoot + "/site/site?siteID=" + id ;
        $("#Container").load(url);
    });
});

你能给我一些提示吗?

我尝试通过以下方式设置值: $("#siteSelect").val(siteName);

感谢您的帮助!

$("#siteSelect").select2().select2('val','your value');

select2 对象无法检测到更改,现在需要您手动执行此操作。方法如下。

  $("#siteSelect").val('<your value>');
    $("#siteSelect").trigger('change');

对对象的 .trigger() 调用让 select2 知道它需要注意的任何更改。不幸的是,这是 v4.0.0 的唯一解决方案,除非更新的版本解决了这个问题。