Использование .toUpperCase и .slice для прописных букв первой буквы не работает - PullRequest
0 голосов
/ 21 февраля 2019

У меня есть данные JSON, которые отображаются через DataTable, и в одном из столбцов текст отображается заглавными буквами, и я хочу, чтобы он был таким, где только первая буква в верхнем регистре.

Как и для другихсообщений на SO, было рекомендовано использовать .toUppercase и .slice.Исходя из того, что у меня есть, я чувствую, что мой код должен работать, но по какой-то причине это не так.Поскольку я работаю с DataTables, мне пришлось преодолеть несколько препятствий, чтобы получить результаты, поэтому мне интересно, не является ли DT причиной проблемы?

Фрагмент JS:

$(document).ready(function() {
        $('#matters-table').DataTable({
            columns: [
                { data: "0" },
                { data: "1" },
                { data: "Status" }, // is in all caps when rendered
                { data: "3" }
            ],
            columnDefs: [
                {"targets":2,"render": function(data) {
                    return data[0].toUpperCase() + data.slice(1);
                }}
            ],
            data: mattsText,
            ... // --------------- irrelevant info.

Есть мысли по этому поводу?

1 Ответ

0 голосов
/ 21 февраля 2019

Используйте следующую функцию capitalize в качестве функции рендеринга (обратите внимание на добавленную split):

capitalize = str => str.split('')[0].toUpperCase() + str.slice(1);

console.log(capitalize('hello world'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...