Boa noite!
Fiz um programa no qual digito o salário de uma pessoa e dada determinada condição ele mostra o salario anterior antes do ajuste, o percentual aplicado, valor aumentado e o novo salário. Quando pego os dados do input, não consigo formatar utilizando o toLocaleString(), não aparece o valor.
Alguém poderia ajudar?
Segue abaixo o código:
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Ex15</title>
<style>
body{
background-color: cornflowerblue;
}
header{
text-align: center;
color: white;
text-shadow:10px 10px 10px black;
}
header p{
text-align: center;
font-style: italic;
}
div#conteudo, div#res{
background-color: white;
margin: auto;
width: 400px;
margin-bottom: 15px;
padding: 10px;
}
div#conteudo label{
font-weight: bold;
}
div#conteudo input{
padding: 5px;
margin-bottom: 5px;
}
</style>
<header>
<h1>Exercício 15</h1>
<p>Aumento de salário</p>
<p>Salários até R$ 280,00 (incluindo): aumento de 20%</p>
<p>Salários entre R$ 280,00 e R$ 700,00: aumento de 15%</p>
<p>Salários entre R$ 700,00 e R$ 1500,00: aumento de 10%</p>
<p>Salários de R$ 1500,00 em diante: aumento de 5%</p>
<p>Após o aumento ser calculado, deverá ser informado: o salário antes do
reajuste; o percentual de aumento aplicado; o valor do aumento; o novo
salário, após o aumento.</p>
</header>
<section>
<div id="conteudo">
<label for="salario">Informe o salário: </label>
<p><input type="number" name="salario" id="sal" ></p>
<input type="button" value="Ajuste" id="botao" >
</div>
<div id="res">
</div>
</section>
<script>
//Pegando os dados
let salario = document.querySelector("#sal").value;
let botao = document.querySelector("#botao");
let res = document.querySelector("#res");
let ajuste = 0;
let salarioFormatado = salario.toLocaleString('pt-br', {style: 'currency', currency: 'BRL'})
//Funcao calcula ajuste salario
function ajusteSalario(){
if(salario.value >= 0 && salario.value <= 280){
ajuste = 20;
let valorAjuste = Number(salario.value) * (ajuste / 100);
let novoSalario = Number(salario.value) + valorAjuste;
res.innerHTML = `Salário antes do reajuste: R$ ${salarioFormatado} <br>`;
res.innerHTML += `Percentual de aumento aplicado: ${ajuste}% <br>`;
res.innerHTML += `Valor do aumento: ${valorAjuste.toLocaleString('pt-br', {style: 'currency', currency: 'BRL'})} <br>`;
res.innerHTML += `Novo salário, após o aumento: R$ ${novoSalario.toLocaleString('pt-br', {style: 'currency', currency: 'BRL'})}`;
}else if (salario.value > 280 && salario.value < 700){
ajuste = 15;
let valorAjuste = Number(salario.value) * (ajuste / 100);
let novoSalario = Number(salario.value) + valorAjuste;
res.innerHTML = `Salário antes do reajuste: R$ ${salario.value} <br>`;
res.innerHTML += `Percentual de aumento aplicado: ${ajuste}% <br>`;
res.innerHTML += `Valor do aumento: ${valorAjuste.toLocaleString('pt-br', {style: 'currency', currency: 'BRL'})} <br>`;
res.innerHTML += `Novo salário, após o aumento: R$ ${novoSalario.toLocaleString('pt-br', {style: 'currency', currency: 'BRL'})}`;
}else if(salario.value >= 700 && salario.value < 1500){
ajuste = 10;
let valorAjuste = Number(salario.value) * (ajuste / 100);
let novoSalario = Number(salario.value) + valorAjuste;
res.innerHTML = `Salário antes do reajuste: R$ ${salario.value} <br>`;
res.innerHTML += `Percentual de aumento aplicado: ${ajuste}% <br>`;
res.innerHTML += `Valor do aumento: ${valorAjuste.toLocaleString('pt-br', {style: 'currency', currency: 'BRL'})} <br>`;
res.innerHTML += `Novo salário, após o aumento: ${novoSalario.toLocaleString('pt-br', {style: 'currency', currency: 'BRL'})}`;
}else{
ajuste = 5;
let valorAjuste = Number(salario.value) * (ajuste / 100);
let novoSalario = Number(salario.value) + valorAjuste;
res.innerHTML = `Salário antes do reajuste: R$ ${salario.value} <br>`;
res.innerHTML += `Percentual de aumento aplicado: ${ajuste}% <br>`;
res.innerHTML += `Valor do aumento: ${valorAjuste.toLocaleString('pt-br', {style: 'currency', currency: 'BRL'})} <br>`;
res.innerHTML += `Novo salário, após o aumento: ${novoSalario.toLocaleString('pt-br', {style: 'currency', currency: 'BRL'})}`;
}
}
botao.addEventListener('click', ajusteSalario);
</script>