Fórum Me ajudem com JavaScript #590601
15/01/2018
0
Boa Tarde!
Estou com um problema em JS, preciso verificar os valores de 2 campos e compara-los, estes estão com mascaras em R$, quando utilizo JS retiro as virgulas e coloco pontos e retiro os pontos e não coloco nada, na teoria isto ia funcionar, porem, o JS coloca um ponto automaticamente quando o valor passa de 999,99
ou seja quando eu vou comparar um valor de R$ 1.000,00 o JS não aceita retirar o 1 ponto e colocar um ponto no lugar da virgula, assim o valor fica comparado como 1. Segue meu código. Me ajudem a resolver este problema com o próprio JS ou me recomendem outra maneira de fazer
Obrigado
Estou com um problema em JS, preciso verificar os valores de 2 campos e compara-los, estes estão com mascaras em R$, quando utilizo JS retiro as virgulas e coloco pontos e retiro os pontos e não coloco nada, na teoria isto ia funcionar, porem, o JS coloca um ponto automaticamente quando o valor passa de 999,99
ou seja quando eu vou comparar um valor de R$ 1.000,00 o JS não aceita retirar o 1 ponto e colocar um ponto no lugar da virgula, assim o valor fica comparado como 1. Segue meu código. Me ajudem a resolver este problema com o próprio JS ou me recomendem outra maneira de fazer
Obrigado
function envia(){
var valorSacar = document.getElementById("valor").value;
var saldo = document.getElementById("saldoRetirar").value;
var saldoA = saldo.replace(",", ".");
if(valorSacar != ""){
var valorSacarA = valorSacar.replace(".", "");
var valorSacarA = valorSacar.replace(",", ".");
if(valorSacarA <= 0){
alert("Informe um valor maior que R$ 1,00!");
}
else if (valorSacarA > saldoA){
alert("Valor acima do disponivel!");
}
else {
//document.getElementById("enviar").submit();
}
} else {
alert("Campo em branco!");
}
}Mateus Henrique
Curtir tópico
+ 0
Responder
Post mais votado
15/01/2018
Cara, tu ta mandando ele dar os dois replace na mesma string:
Ai ele substitui o ponto por nada na string "2.000,00" por exemplo, depois pega a mesma string e substitui a virgula, ai a variavel fica com valor "2.000.00".
Olha como ficou o script corrigido:
Espero ter ajudado. :D
Ai ele substitui o ponto por nada na string "2.000,00" por exemplo, depois pega a mesma string e substitui a virgula, ai a variavel fica com valor "2.000.00".
Olha como ficou o script corrigido:
function envia()
{
var valorSacar = "2.000,00";
var saldo = "5.000,00";
var saldoA = saldo.replace(".", "");
var saldoB = saldoA.replace(",", ".");
if(valorSacar != ""){
var valorSacarA = valorSacar.replace(".", "");
var valorSacarB = valorSacarA.replace(",", ".");
if(valorSacarA <= 0){
alert("Informe um valor maior que R$ 1,00!");
}
else if (valorSacarB > saldoB){
alert("Valor acima do disponivel!");
}
else {
//document.getElementById("enviar").submit();
alert(valorSacarB);
}
} else {
alert("Campo em branco!");
}
}Espero ter ajudado. :D
Só substitui "valorSacarA" por "valorSacarB" no if, eu esqueci :p
Alex William
Responder
Gostei + 1
Mais Posts
15/01/2018
Alex William
Cara, tu ta mandando ele dar os dois replace na mesma string:
Ai ele substitui o ponto por nada na string "2.000,00" por exemplo, depois pega a mesma string e substitui a virgula, ai a variavel fica com valor "2.000.00".
Olha como ficou o script corrigido:
Espero ter ajudado. :D
Ai ele substitui o ponto por nada na string "2.000,00" por exemplo, depois pega a mesma string e substitui a virgula, ai a variavel fica com valor "2.000.00".
Olha como ficou o script corrigido:
function envia()
{
var valorSacar = "2.000,00";
var saldo = "5.000,00";
var saldoA = saldo.replace(".", "");
var saldoB = saldoA.replace(",", ".");
if(valorSacar != ""){
var valorSacarA = valorSacar.replace(".", "");
var valorSacarB = valorSacarA.replace(",", ".");
if(valorSacarA <= 0){
alert("Informe um valor maior que R$ 1,00!");
}
else if (valorSacarB > saldoB){
alert("Valor acima do disponivel!");
}
else {
//document.getElementById("enviar").submit();
alert(valorSacarB);
}
} else {
alert("Campo em branco!");
}
}Espero ter ajudado. :D
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)