【问题标题】:Get Last Selected Value of Select2?获取 Select2 的最后选择值?
【发布时间】:2016-05-07 22:39:38
【问题描述】:

我正在为 Select2 使用多个选项,并且数据是从 JSON 源加载的。

由于我不确定如何准确解释,我将提供一个示例:

列表选项:

  • 一个
  • B
  • C

如果我选择C,那么

$("#select2").change(function(){
        alert($(this).val());
    });

结果:[C]

但是,如果我选择 A,我会得到 [A, C]

如果我然后选择 B 我会得到 [A, B, C]

我最好希望它附加,这样我会得到 [C, A, B]。但是,能够找到最后选择的选项就可以了。我试过 :last 和其他答案,但似乎没有任何效果。

提前致谢。

我的 Select2 脚本:

$.getJSON('profile/Skills.json', function (json) {
        var mainList = [];
        for (var TradeName in json) {
            if (json.hasOwnProperty(TradeName)) {
                var item = json[TradeName];
                mainList.push(item.TradeName);            
            }
        }       
        $(".chyeaSelect").select2({
            data:mainList
        });
    }); 

【问题讨论】:

  • 我相信查看更多代码可能会有所帮助,因为在这样的列表上执行基本警报不会产生这些结果:codepen.io/stufu/pen/YqBZyV - JSON 请求是什么样的?
  • @StuFu 这是使用select2.github.io
  • 抱歉 - 没看到标签!更新了我的笔以将其拉入,但它仍然可能有助于了解您如何通过 Select2 拉入数据
  • @StuFu 已更新。还有什么让我知道
  • 我使用您的确切代码和虚拟提要更新了我的笔,不确定我是否看到了问题

标签: javascript jquery jquery-select2 select2


【解决方案1】:

我相信您正在寻找这样的东西:

$.getJSON('https://demo8858242.mockable.io/list', function (json) {
        var mainList = [];
        for (var TradeName in json) {
            if (json.hasOwnProperty(TradeName)) {
                var item = json[TradeName];
                mainList.push(item.TradeName);            
            }
        }       
        $(".select1").select2({
            data:mainList
        });
    }); 

  var array = [];

  $(".select1").change(function(){
    //alert($(this).val());
    array.unshift($(this).val());
    alert(array);
  });

// Alternate
//$(".select1").change(function(){
//    alert($(this).val());
//    //$('.selected').prepend($(this).val());
//});

Codepen

【讨论】:

  • 很遗憾没有。我不想在数组中添加或删除。我正在寻找选择的新值。问题在于 select2 向对象添加项目的方式。
【解决方案2】:

我想现在解决您的问题为时已晚,但也许这可以帮助其他人。 我用:

$('#select2').on('select2:select', function(e: any) {
    console.log(e.params.data.id);
});

与“select2:unselect”相同。

【讨论】:

    猜你喜欢
    • 2016-03-31
    • 2013-11-23
    • 1970-01-01
    • 2013-10-09
    • 2020-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-14
    相关资源
    最近更新 更多