【问题标题】:JQuery Select2 - Re initialization with data not workingJQuery Select2 - 重新初始化数据不起作用
【发布时间】:2015-11-15 13:04:29
【问题描述】:

我正在尝试通过剃刀替换页面加载时填充的数据。我有三个 select2 组合框,区域、客户和问题。区域过滤客户端。我在这些组合框上使用 jquery select2 插件。我在 documet.ready 上实例化它们。默认情况下,客户端只显示所有客户端。 DropDowns.Clients 是一个包含下拉数据的通用列表。

$("#selectRegion").select2({
    placeholder: "Filter By Region",
    allowClear: true,
    width: '100%'

}).on("change", function (e) {

    debugger;
    var data = [];

    var regionID = $(this).val();

    $.each(DropDowns.Clients, function (idx, item) {
        if (item.regionID == regionID)
            data.push({ "id": item.clientID, "text": item.Name });
    })


    $("#selectClient").select2({
        data: data
    });

    debugger;
});


$("#selectClient").select2({
    placeholder: "Filter By Client",
    allowClear: true,
    width: '100%'

}).on("change", function (e) {

});

当我更改复选框并使用正确的数据填充数据数组时会触发该函数,但如果我随后设置数据属性,则不会发生任何变化。我已经阅读了 Stack Overflow 上的当前解决方案,但到目前为止,它们都没有奏效,所以我认为第二双眼睛可能会奏效。我正在使用 v4 select2 我应该考虑回到 2 吗?任何帮助将不胜感激。

【问题讨论】:

  • 设置数据选项只会重新初始化 Select2 并添加这些选项。如果您的目标是为其提供一组新选项以供使用,则需要清除旧选项。
  • @KevinBrown 是的,谢谢你,这是最后的问题。

标签: jquery asp.net-mvc jquery-select2 jquery-select2-4


【解决方案1】:

我设法通过以下方式解决了这个问题。

//Clear List
$("#selectIssue").select2().empty()

$("#selectIssue").select2({
    data: data,
    placeholder: "Filter By Issue",
    allowClear: true,
    width: '100%'
})

【讨论】:

    猜你喜欢
    • 2017-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-13
    • 2015-08-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多