2016-11-18 1 views
0

Невозможно найти решение, так что, возможно, кто-то поможет.Сопряженный выпадающий источник из свойства столбца

У меня есть набор данных, подобных этому:

[ 
     { 
     id: 1, 
     name: 'Nissan', 
     year: 2012, 
     chassis_color: ['yellow', 'red', 'orange', 'green', 'blue', 'gray', 'black', 'white'] 
     }, 
     { 
     id: 2, 
     name: 'Chrysler', 
     year: 2014, 
     chassis_color: ['red', 'orange', 'blue', 'gray', 'black', 'white'] 
     }, 
     { 
     id: 3, 
     name: 'Volvo', 
     year: 2015, 
     chassis_color: ['white', 'orange', 'blue', 'red'] 
     } 
    ] 

Так что я не могу понять, как заполнить chassis_color столбца из раскрывающегося списка этого значения не вручную, путем ввода значения массива.

пример в документации:

columns: [ 
     { 
     type: 'dropdown', 
     source: ['yellow', 'red', 'orange', 'green', 'blue', 'gray', 'black', 'white'] 
     } 
] 

Но мне это нужно:

columns: [ 
      { 
      type: 'dropdown', 
      source: 'chassis_color' // it should understand that this property is an array and populate source with it 
      } 
] 

работать таким же образом.

Мне нужно это, потому что у меня очень большой набор данных, и будет сложно установить что-то вручную.

Спасибо.

ответ

1

Handsontable просто попробуйте отобразить ваши массивы в качестве данных.

Вы можете использовать свойство ячейки, чтобы изменить значение источника:

cells: function(row, col, prop) { 
    var cellProperties = this; 

    if (col == 0) { 
     cellProperties.type = 'dropdown'; 
     var val = data[row].chassis_color_source; 

     if (typeof val != 'undefined') { 
      cellProperties.source = val; 
     } 
    } 

    return cellProperties; 
} 

Полный пример в этом JSFiddle.

+0

Вы спасли мой день. Спасибо! – user2960708

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