@shvedovea

Textarea как убрать знак запятой?

Подскажите, есть функция, которая добавляет в массив значения valTop.push(row['value'] + '\n');

Эта строка у меня в цикле и после окончания цикла, вызваю $('#topPanel').val(valTop);

И перед каждым значением, кроме первого, появляется запятая:
Test1
,Test2
,Test3

Хотя данные приходят в таком в виде
{id: 1, value: "Test1", date: "2019-04-04T18:09:49.5628311+10:00", table: 3}

{id: 2, value: "Test2", date: "2019-04-04T18:09:52.5973855+10:00", table: 3}

{id: 3, value: "Test3", date: "2019-04-04T18:09:55.1855188+10:00", table: 3}

Почему так может быть?
  • Вопрос задан
  • 202 просмотра
Решения вопроса 1
Vlad_IT
@Vlad_IT Куратор тега JavaScript
Front-end разработчик
$('#topPanel').val(valTop.join(''));

Еще лучше, убрать \n у

valTop.push(row['value']);

и при выводе его добавлять

$('#topPanel').val(valTop.join('\r\n'));

Запятые берутся из-за того, что функция val пытается преобразовать ваш массив в строку, вызовом toString массива. А toString массива склеивает массив, разделяя элементы запятой

[1,2,3].toString() // "1,2,3"

чтобы склеить массив без запятой (или чтобы использовать другую строку), нужно использовать функцию join.

[1,2,3].join(''); // 123

если в join не передать аргумент, то по умолчанию опять разделителем будет запятая

[1,2,3].join(); // 1,2,3
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы