Javascript value is not summed

Asked

Viewed 32 times

1

I have three variables and I try to get the value of them ,and then add them up and show them

    <title>Valor do Caro</title>

    <script language='Javascript'>

    var ano_carro = document.getElementById('ano_carro').value;

    var condicao_carro = document.getElementById('condicao_carro').value;

    var tempo_uso_carro = document.getElementById('tempo_uso_carro').value;

function valorCarro(){

    var valor_carro = ano_carro + condicao_carro + tempo_uso_carro;

    document.write(valor_carro);

    alert(valor_carro)

    }
    </script>
</head>

<body>
    <div>
        <p>
        <b>Ano do carro:<b>
        <select id="ano_carro">
            <option value="100">anos 90</option>
            <option value="250">anos 2000</option>
            <option value="500">anos 2010 / 20</option>

        </select>
        </p>
    </br>
    </div>

    <div>
        <p>
        <b>Condições do veiculo:<b>
        <select id="condicao_carro">
            <option value="100">Velho</option>
            <option value="500">Semi-novo</option>
            <option value="1000">Novo</option>

        </select>
        </p>
    </br>
    </div>

    <div>
        <p>
        <b>Tempo de uso:<b>
        <select id="tempo_uso_carro">
            <option value="1000">1 ano</option>
            <option value="500">5 anos</option>
            <option value="300">10 anos</option>

        </select>
        </p>
    </br>
    <img src="iniciar.png" onclick="valorCarro()">

    </div>

</body> 

1 answer

0

I believe it is because you are adding strings and consequently Javascript will concatenate them.

Test the shape down:

var ano_carro = document.getElementById('ano_carro').value;

var condicao_carro = document.getElementById('condicao_carro').value;

var tempo_uso_carro = document.getElementById('tempo_uso_carro').value;

function valorCarro() {

  var valor_carro = Number(ano_carro) + Number(condicao_carro) + Number(tempo_uso_carro);

  document.write(valor_carro);

  alert(valor_carro)

}
<title>Valor do Caro</title>


<body>
  <div>
    <p>
      <b>Ano do carro:<b>
        <select id="ano_carro">
            <option value="100">anos 90</option>
            <option value="250">anos 2000</option>
            <option value="500">anos 2010 / 20</option>

        </select>
        </p>
    </br>
    </div>

    <div>
        <p>
        <b>Condições do veiculo:<b>
        <select id="condicao_carro">
            <option value="100">Velho</option>
            <option value="500">Semi-novo</option>
            <option value="1000">Novo</option>

        </select>
        </p>
    </br>
    </div>

    <div>
        <p>
        <b>Tempo de uso:<b>
        <select id="tempo_uso_carro">
            <option value="1000">1 ano</option>
            <option value="500">5 anos</option>
            <option value="300">10 anos</option>

        </select>
        </p>
    </br>
    <img src="iniciar.png" onclick="valorCarro()">

    </div>

</body>

Reference

Browser other questions tagged

You are not signed in. Login or sign up in order to post.