2017-02-16 2 views
0

Успешно ли реализован jQuery's sortable с помощью чипов Materialize.css? Я пытаюсь переупорядочить их, но внутренние данные не отвечают на порядок после сортировки.Сортировка чипов Materialize.css

https://jqueryui.com/sortable/

http://materializecss.com/chips.html

`` `

$(".location-chips").sortable({ 
    stop: function(e, ui){ 
     // This is still in the original order 
     console.log($(this).material_chip('data').map(function(o){return o.tag}).join(";")) 
    } 
    }) 

` ``

ответ

0

Вот решение, которое я придумал:

var source, dest; 
    $(".location-chips").sortable({ 
    connectWith: ".location-chips", 
    start: function(e, ui){ 
     source = dest = e.target; 
     console.log(source.outerText.split("close").filter(function(o){return o}).join(";")) 
    }, 
    change: function(e, ui){ 
     if(ui.sender){ 
     dest = e.target 
     } 
    }, 
    stop: function(e, ui){ 

     var dText = dest.outerText.split("close").filter(function(o){return o}).join(";") 
     $(dest).siblings("input").val(dText).trigger("change") 
     console.log(dText) 

     if(source != dest){ 
     var sText = source.outerText.split("close").filter(function(o){return o}).join(";") 
     $(source).siblings("input").val(sText).trigger("change") 
     console.log(sText) 
     } 

    } 

Обратите внимание, что я храню свои данные в строке с полуколонами как разделитель.

Я не уверен, насколько это стабильно, поскольку я использую недокументированные внутренние функции функции чипов. К сожалению, команда MaterializeCSS сбила запросы, чтобы сделать чипы отсортированными как встроенные функции.

Смежные вопросы