Как отсортировать элементы в селесте?

Доброго времени суток! Проблема в том что нужно отсортировать элементы селеста.
Данные получаю с внешнего файла krovlya-yuga.ru/wood_calc.php, сам массив отсортирован так как нужно (по ключу name), но в селест попадают в разброс. Мне нужно чтоб размер страпил шел от меньшего к большему.
Сама страничка krovlya-yuga.ru/kalkulyator-lesa/
Решение проблемы на modx.pro/topic/14593/
Roman
09 февраля 2018, 08:53
modx.pro
953
0

Комментарии: 6

Roman
09 февраля 2018, 14:37
0
Вообщем разобрался, проблема в том что массиве полученном из файла php данные не отсортированы
    Roman
    09 февраля 2018, 14:38
    0
    Только как отсортировать его.
    Конструкция вида
    db[selected_options.cover]["type"][selected_options.decking]["kind"].sort(function (a, b) {
      if (a.name > b.name) {
        return 1;
      }
      if (a.name < b.name) {
        return -1;
      }
      // a должно быть равным b
      return 0;
    });
    не помогает, точнее она не работает, как обратиться к массиву?
      Максим
      09 февраля 2018, 16:27
      0
      Учитывая тот факт, что из базы приходит строка, то нужно пробежаться по массиву и преобразовать либо в int, либо в float
      И дальше уже функцией asort() сортировать массив.
        Roman
        09 февраля 2018, 16:58
        0
        сам массив отсортирован, только вот когда я получаю его посредством JSON то сортировка нарушается
          Максим
          09 февраля 2018, 17:41
          0
          вы тогда хоть вывод console.log(db[selected_options.cover][«type»][selected_options.decking][«kind»]); покажите
            Roman
            12 февраля 2018, 11:20
            0
            {0: {…}, 1: {…}, 2: {…}, 3: {…}, 4: {…}, 5: {…}, 6: {…}, 7: {…}, 8: {…}, 9: {…}, 10: {…}}
            0:{name: "200x50", width_planks: "200", height_planks: "50", sort: "1", price: "10100.00", …}
            1:{name: "100x25", width_planks: "100", height_planks: "25", sort: "1", price: "10100.00", …}
            2:{name: "100x32", width_planks: "100", height_planks: "32", sort: "1", price: "10400.00", …}
            3:{name: "150x100", width_planks: "150", height_planks: "100", sort: "1", price: "10400.00", …}
            4:{name: "150x25", width_planks: "150", height_planks: "25", sort: "1", price: "10100.00", …}
            5:{name: "125x25", width_planks: "125", height_planks: "25", sort: "1", price: "10100.00", …}
            6:{name: "100x50", width_planks: "100", height_planks: "50", sort: "1", price: "10100.00", …}
            7:{name: "120x50", width_planks: "120", height_planks: "50", sort: "1", price: "10100.00", …}
            8:{name: "150x50", width_planks: "150", height_planks: "50", sort: "1", price: "10100.00", …}
            9:{name: "150x150", width_planks: "150", height_planks: "150", sort: "1", price: "10400.00", …}
            10:{name: "100x100", width_planks: "100", height_planks: "100", sort: "1", price: "10400.00", …}
            __proto__
            :
            Object
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        6