【问题标题】:Get Selected value from Multi-Value Select Boxes by jquery-select2?通过 jquery-select2 从多值选择框中获取选定值?
【发布时间】:2012-10-05 01:18:04
【问题描述】:

我正在使用 Select2 Jquery 绑定用于多选的下拉列表。我正在使用 select2 jquery。

它工作正常,我可以绑定我的下拉列表,但我需要从我的多值选择器中获取选定的值。我正在寻找获取 select2 Jquery 支持的值的方法。它可能有一个函数获取选定的值。
我的下拉绑定代码

$(".leaderMultiSelctdropdown").select2( {
    maximumSelectionSize: 4
});

【问题讨论】:

    标签: jquery jquery-select2


    【解决方案1】:
    alert("Selected value is: "+$(".leaderMultiSelctdropdown").select2("val"));
    

    或者,如果您使用常规选择框作为基础,您也应该能够使用正常的 jquery 调用:

    alert("Selected value is: "+$(".leaderMultiSelctdropdown").val());
    

    都返回所选键的数组。

    【讨论】:

    • 非常感谢@manuFS,你能告诉我如何将选定的值设置为多值选择器。我知道这是另一个问题,但如果可以的话。
    • >> ivaynberg.github.com/select2 $(".leaderMultiSelctdropdown").select2("val", ["some","keys"]);
    • 你的第二个没有返回值......任何第一个如何工作,所以这对我来说很有趣。
    • 第二个会将值设置为“some”和“keys”,而不是返回它。
    【解决方案2】:

    我知道已经晚了,但我认为你可以这样尝试

    $("#multipledpdwn").on("select2:select select2:unselect", function (e) {
    
        //this returns all the selected item
        var items= $(this).val();       
    
        //Gets the last selected item
        var lastSelectedItem = e.params.data.id;
    
    })
    

    希望它对将来的某些人有所帮助。

    【讨论】:

      【解决方案3】:

      返回对象结构中选择的数据:

      console.log($(".leaderMultiSelctdropdown").select2('data'));
      

      类似:

         [{id:"1",text:"Text",disabled:false,selected:true},{id:"2",text:"Text2",disabled:false,selected:true}]
      

      返回选定的值:

      console.log($('.leaderMultiSelctdropdown').val());
      console.log($('.leaderMultiSelctdropdown').select2("val"));
      

      类似:

      ["1", "2"]
      

      【讨论】:

        【解决方案4】:

        这样试试,

        jQuery('.leaderMultiSelctdropdown').select2('data');
        

        【讨论】:

        • 当前接受的答案对我不起作用-无论我选择什么,它都只是给了["1","2"]等。这个给了我正确的信息。
        【解决方案5】:

        简单地说:

        $(".leaderMultiSelctdropdown").val()
        

        【讨论】:

          【解决方案6】:

          你应该试试这个代码。

           $("#multiple_Package_Ids_checkboxes").on('change', function (e) { 
                  var totAmt = 0;
                  $.each($(this).find(":selected"), function (i, item) { 
                      totAmt += $(item).data("price");
                      });
                  $("#PackTotAmt").text(totAmt);
              }); 
          

          【讨论】:

          • 它是多选选项的有用解决方案。
          • 在我看来,这应该是公认的答案。实际上它是用于数字的,但您可以轻松地用于文本。
          【解决方案7】:

          试试这个:

            $('.select').on('select2:selecting select2:unselecting', function(e) {
          
                var value = e.params.args.data.id;
          
            });
          

          【讨论】:

          • 您可能想详细说明为什么这个答案与其他答案不同。
          【解决方案8】:

          请检查这个简单的example。您可以在 select2 multi 中获取值。

          var values = $('#id-select2-multi').val();
          console.log(values);
          

          【讨论】:

            【解决方案9】:

            这将从多值选择框中获取选定值: $("#id option:selected").val()

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2013-11-23
              • 1970-01-01
              • 2013-07-04
              • 2012-10-05
              相关资源
              最近更新 更多