1
resposta

Pegar valor de um range

Boa tarde, estou tentando pegar valores de um range para fazer uma multiplicação porem sempre aparece NaN.

script>
        function calcular() {
        var valor1 = parseInt(document.getElementById('valor').value);
        var valor2 = parseInt(document.querySelector('#tick'));
        var resul = valor1 * valor2;
        document.getElementById('resul').innerHTML= resul
     }
    </script>

 <h3>Multiplicar</h3>
    <label for="valor">Digite o valor</label>
    <input type="text" id="valor">
    <div>
       <input type="range" list="tick" min="1" max="9" onchange="calcular()">
        <datalist id="tick">
        <option value="1">
        <option value="2">
        <option value="3">
        <option value="4">
        <option value="6">
        <option value="7">
        <option value="8">
        <option value="9">
        </datalist>
    </div>
       <label for="resul">Resultado:</label> 
    <div id ="resul"> </div></div>
1 resposta

Oi, Rafael, tudo bem?

No seu input do range utilize uma classe ou um id para capturar o range do html para o javascript, dessa forma: class="tick" e na sua função calcular, usar a propriedade value para pegar o valor que foi deifnido no input do range como no input de texto, ficando dessa forma:

var valor2 = parseInt(document.querySelector('.tick').value);

Agora o resultado vai sair certo! Testa e me fala :}