Шаблон столбца сетки кендо для столбца со значениями
В моей сетке кендо есть специальный столбец со значениями: "Unpaid", "Paid". Из бэкэнда приходит 0 - означает "Неоплаченный", 1 - означает "Оплаченный".
Мой конфиг для этого столбца:
{
columnMenu: true
encoded: true
field: "Invoice__state"
filterable: {cell: {…}}
resizable: true
sortable: true
title: "State"
type: "string"
values: Array(2)
0: {value: 1, text: "Paid"}
1: {value: 0, text: "Unpaid"}
}
Очень хорошо (рис. 1).
Теперь мне нужно сделать разметку для столбца - красный для Unpaid, зеленый для Paid. Я хочу использовать шаблон для столбца. Я просто добавляю простой шаблон
template: "<span class="label label-danger">#: Invoice__state #</span>"
Но теперь я вижу 0 или 1, неоплаченный или оплаченный (рис. 2).
Как я могу изменить шаблон для отображения метки вместо значений?
1 ответ
Решение
Вы можете сделать с помощью атрибута по условию.
Здесь код для вашей ссылки.
Блок CSS:
<style>
.red{
color:red;
}
.green {
color:green;
}
</style>
Блок Javascript:
<script>
$("#grid").kendoGrid({
columns: [
{ field: "productName" },
{ field: "category", values: [
{ text: "Beverages", value: 1 },
{ text: "Food", value: 2 }
],attributes: {
class: "#=category ==1 ? 'red' : 'green' # #console.log(data)#"
} }
],
dataSource: [
{ productName: "Tea", category: 1 },
{ productName: "Ham", category: 2 }
]
});
</script>