Я использую handsontable, и мой код написан на машинописном тексте / aurelia. Я не могу выровнять столбец флажка по центру. Я перешел по ссылке этой и установил className в столбце флажка на "htCenter htMiddle ". В текстовых столбцах это работает, но не в столбце флажка. Когда я использую свои инструменты разработчика и устанавливаю класс на <td> на "htCenter htMiddle", он работает. Есть ли другой способ установить выравнивание для этого столбца флажка?

Вот код для добавления className:

this.options.columns = [ { data: "modalValue", renderer: linkButtonRenderer, readOnly: true }, { data: "uri", readOnly: true }, { data: "isPublic", className: "htCenter htMiddle", type: "checkbox" } ];

3
ArsenalRocks 26 Окт 2015 в 17:09

3 ответа

Лучший ответ

Я сделал собственное исправление этой проблемы для Handsontable 0.19.0.

[handsontable.full.js: line 17197]
function checkboxRenderer(instance, TD, row, col, prop, value, cellProperties)

Добавление этого, чтобы разрешить использование пользовательских рендереров (не знаю, почему они это пропустили)

getRenderer('base').apply(this, arguments);

Если вы просто хотите жестко закодировать выравнивание, поместите это как первую строку в этой функции:

TD.style.textAlign = "center";
2
Lucho Rabuffetti 1 Дек 2015 в 17:02

Невозможность установить выравнивание флажков (и чисел) было ошибкой в ​​предыдущих версиях Handsontable. Это исправлено в версии для ручного управления 0.25.1 . --- см. https://github.com/handsontable/handsontable/issues/ 2925 и https://github.com/handsontable/handsontable/issues/3532 < / а>.

Теперь код OP должен работать.

1
JonBrave 2 Ноя 2016 в 11:08

Вы должны установить

{ data: 'Is_anything', type: 'checkbox', className: "htCenter htMiddle" },

Как это. Вы получите флажок в центре.

3
Alex K 18 Июн 2016 в 09:08