Definir valor minimo em calculo html

Manatubear

Power Member
Boas!
Estou com dificuldade em encontrar como definir um valor minimo num calculo html.
Estou a usar esta formula:
HTML:
<form><input type="text" style="text-align: center;" id="level" size="3" /><button type="button" style="font: bold 12px Arial" style="color: black" id="submit">Calculate</button><br />
<br />
<label>Minimum Level:</label> <input type="text" size="3" style="text-align: center;" id="result_min" readonly="readonly" /><br />
<label>Maximum Level:</label> <input type="text" size="3" style="text-align: center;" id="result_max" readonly="readonly" /></form>
<script type="text/javascript">
//<![CDATA[
var button = document.getElementById("submit");

button.addEventListener("click", function () {
  var level = document.getElementById("level").value;

  var nivel_minimo = Math.ceil((parseInt(level) * 0.8) - 20);
  var nivel_maximo = Math.floor((parseInt(level) * 1.2) + 20);

  var result_min = document.getElementById("result_min");
  var result_max = document.getElementById("result_max");

  result_min.value = nivel_minimo;
  result_max.value = nivel_maximo;
});
//]]>
</script>
O que pretendo é que o resultado minimo mostrado seja sempre 0, mesmo que o resultado real seja negativo. E para outro uso da mesmo formula preciso que o resultado minimo seja sempre 2.
É possível fazer isto?
 
Não me faz muito sentido o teu código, nem estou a perceber o que estás a tentar concretizar, mas adiante...

se queres que uma variavel, mesmo que seja de valor negativo retorne 0, tens de fazer essa veriicação.

if (varA < 0) varA = 0;

caso seja superior a 0, fica com o valor que já tem.
 
Pelo que percebi precisas que o resultado seja zero se o nível mínimo for inferior a zero e dois se for outro valor qualquer, se for isso utiliza o operador ternário:

Código:
result_min.value = (nivel_minimo < 0) ? 0 : 2;
 
Não me faz muito sentido o teu código, nem estou a perceber o que estás a tentar concretizar, mas adiante...

se queres que uma variavel, mesmo que seja de valor negativo retorne 0, tens de fazer essa veriicação.

if (varA < 0) varA = 0;

caso seja superior a 0, fica com o valor que já tem.

Obrigado, funcionou perfeitamente!!

Pelo que percebi precisas que o resultado seja zero se o nível mínimo for inferior a zero e dois se for outro valor qualquer, se for isso utiliza o operador ternário:

Código:
result_min.value = (nivel_minimo < 0) ? 0 : 2;

A mesma formula é usada em sitios diferente para situaçoes diferentes, numa não pode ser inferior a zero, na outra não pode ser inferior a 2.
Obrigado na mesma! :)
 
Back
Topo