编程语言
首页 > 编程语言> > javascript-如何在select2()字段中保存排序顺序?

javascript-如何在select2()字段中保存排序顺序?

作者:互联网

我使用select2库使用select2()字段,并且在该字段中启用了拖放排序.

它运作良好,但是一旦我保存它,排序中断就会按字母顺序排序.

我想知道是否有可能在select2()字段中拖放后保存元素的顺序.

请提出建议.

解决方法:

根据Select2文档,新的有序值将保存在附加的隐藏字段中.
http://ivaynberg.github.io/select2/

(右键单击“输入”字段,然后检查元素以在div#select2-container之后找到下面的行)

有两个选项可能对您有用:

选项1:简单一

检查您如何添加控件的顺序,具体如下:

$("#e15").select2({tags:["red", "green", "blue", "orange", "white", "black", "purple", "cyan", "teal"]});

该控件只呈现与指定上述行相同的顺序.

如果您没有将这些值另存为逗号分隔的文本,而是另存为行记录,则您的数据库查询可能会将它们按字母顺序排序.

选项2:再往前走一点

此代码将帮助您将排序后的值保存在Cookie中,因此您可以在整个会话中使用相同的顺序.

$(function(){

  if ($.cookie('OrderedItemList') != null){
      $("#e15").select2({tags: $.cookie('OrderedItemList').split(',')});
   }

  $("#e15").on("change", function() { 
                         $("#e15_val").html($("#e15").val());
                         $.cookie('OrderedItemList', $("#e15").val(), { expires: 365 });
                           });

});

请注意,此代码可能不适用于数据库绑定的字段,如果这是您所需要的,则可能需要添加一些代码.

标签:jquery-ui,jquery-select2,javascript,jquery
来源: https://codeday.me/bug/20191122/2060335.html