Я очень новичок в Javascript, и я застрял в этой проблеме уже несколько часов, и я не могу понять, как решить эту проблему.
Есть ли способ вывести тернарный оператор «$» с зеленым текстом или «-$» с красным текстом?
То, как я настроил его прямо сейчас, проверяет, превышает ли доход результат или равен ему, а затем добавляет соответствующий знак перед суммой баланса. Но я хочу, чтобы баланс и знак становились красными, если значение отрицательное, и зеленым, если положительное.
Я попытался присвоить идентификатор "signValue" $ в файле HTML, а затем использовать
document.getElementById("signValue").style.color = "red"
например, и я все еще не могу заставить его работать.
// DETERMINE THE + or - SIGN OF THE BALANCE
let sign = (income >= outcome) ? "$" : "-$"
}
Это должно работать в зависимости от значений дохода и результата
const income = 1000
const outcome = 500
let sign = (income >= outcome) ? "$" : "-$"
const element = document.getElementById("signValue")
if (sign === "$")
element.style.color = 'green'
else if (sign === "-$")
element.style.color = 'red'
element.innerHTML = sign;
<p id = "signValue"></p>
Вы можете попробовать это
let element = document.getElementById("signValue");
element.innerHTML = (income > outcome ? "" : "-") + "$";
element.style.color = income > outcome ? "green" : "red";
Надеюсь, что приведенный ниже код поможет вам,
HTML-код:
<label style = "text-align: center;">
<span id = "currency">$ </span> <span id = "value"> 100</span>
</label>
JavaScript-код
getCheck() {
const income = 120;
const outcome = 110
let res = income >= outcome ? "green" : "red";
document.getElementById("currency").style.color = res;
}
`
Не могли бы вы показать немного больше вашего кода, а еще лучше простой фрагмент, потому что из приведенного выше невозможно увидеть, где вы ошиблись.