Tive um problema com uma soma em javascript onde quando o resultado era entre 1,01 e 1,99 ele entendia que não era maior que 1, sendo necessário então tratar valores decimais com a função abaixo.
function valida_campos(p_obj)
{
//Se os campos estiverem vazios preencho com zero
if (document.frm_filtro.campo1.value == "")
{
document.frm_filtro.campo1.value="0,00";
}
if (document.frm_filtro.campo2.value == "")
{
document.frm_filtro.campo2.value="0,00";
}
var v_campo1 = document.frm_filtro.campo1.value;
var v_campo2 = document.frm_filtro.campo2.value;
v_campo1 = v_campo1.replace(",",".");
v_campo2 = v_campo2.replace(",",".");
var v_soma = (parseFloat(v_campo1) + parseFloat(v_campo2)).toFixed(2);
// A soma dos campos campo1 e campo2 não podem ser maiores que 1
if ((v_soma) > 1 )
{
alert("Soma dos valores não podem ser maior que 1");
document.frm_filtro.campo1.value="0,00";
document.frm_filtro.campo2.value="0,00";
p_obj.focus();
return false;
}
Nenhum comentário:
Postar um comentário