【问题标题】:How to set select2 to a specific value?如何将 select2 设置为特定值?
【发布时间】:2016-02-18 14:05:33
【问题描述】:

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

这是我的 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);

感谢每一个帮助!

【问题讨论】:

    标签: javascript jquery-select2 jquery-select2-4 select2


    【解决方案1】:

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

    【讨论】:

    • 我无法替换 ("#Container"),因为这是要加载的部分视图。
    • 更新了ans,检查一次
    • 谢谢,这对我有用。不显示名称,但显示价值,这最重要!
    【解决方案2】:

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

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

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

    【讨论】:

    • 虽然这段代码 sn-p 可以解决问题,including an explanation 确实有助于提高您的帖子质量。请记住,您正在为将来的读者回答问题,而这些人可能不知道您的代码建议的原因。也请尽量不要用解释性 cmets 挤满你的代码,因为这会降低代码和解释的可读性!
    • 感谢您的反馈。已进行了适当的更改。
    猜你喜欢
    • 1970-01-01
    • 2021-08-30
    • 2017-01-16
    • 1970-01-01
    • 2018-11-03
    • 2013-02-07
    • 2017-03-12
    • 2023-03-10
    相关资源
    最近更新 更多