Как установить CSS из Javascript динамических данных - PullRequest
0 голосов
/ 21 мая 2018

Я хочу установить метку 'status' и их цветовую базу шрифта css на их действительность и попробовал следующее:

/**
 * To return status and set their label color according to expiration date
 */

function getStatusName(DueDate) {

  var a = app.pages.Dashboard.descendants.Table2Body.children.Table2Row.children.status;

  var status = 'Valid';

  if (DueDate < new Date()) {
    status = 'Expired';
  }

  switch(status) {
    case 'Valid':
        a.styles.color = green;
        break;
    case 'Expired':
        a.styles.color = red;
        break;
    default:
        return;
  }

  return status;
}

Метка работает, за исключением установки цвета этой метки.Как правильно установить CSS в Js?Это один из моих серверных скриптов в Google App Maker.

Ответы [ 2 ]

0 голосов
/ 21 мая 2018

Я бы предпочел использовать привязку для свойства стилей метки:

@datasource.item.DueDate < new Date() ? ['green'] : ['red']

и пару CSS-классов:

.green {
  color: green;
}

.red {
  color: red;
}

Тот же трюк должен работать для привязки текста метки:

@datasource.item.DueDate < new Date() ? 'Valid' : 'Expired'
0 голосов
/ 21 мая 2018

Следующий код должен работать, если a является правильным элементом (разница в том, что ваш код был "style" вместо "styles" и инкапсулирует значение css в двойных кавычках):

/**
 * To return status and set their label color according to expiration date
 */

function getStatusName(DueDate) {

  var a = app.pages.Dashboard.descendants.Table2Body.children.Table2Row.children.status;

  var status = 'Valid';

  if (DueDate < new Date()) {
    status = 'Expired';
  }

  switch(status) {
    case 'Valid':
        a.style.color = "green";
        break;
    case 'Expired':
        a.style.color = "red";
        break;
    default:
        return;
  }

  return status;
}

Дополнительная информация:https://www.w3schools.com/js/js_htmldom_css.asp

...