Rodrigo Dias Rodrigo Dias - 5 months ago 17
jQuery Question

jQuery - Compare two values and show or hide div

https://jsfiddle.net/6k6ehnn2/

Hello,
I need to make , if the value is greater than or equal to 1000.00 function display the div

.boleto
, but does not display ... Where am I going wrong in comparing the two strings?

<span class="valor">R$ 200,00</span>
<div class="boleto">pagamento em boleto</div>


$(function(){
var valorMinimoBoleto = '1000,00';
var valorTratado = $(".valor").html().replace('R$ ','');
var valorBoleto = valorTratado;
if ( valorBoleto >= valorMinimoBoleto ) {
console.log('valor exibe boleto');
} else {
$('.boleto').hide();
console.log('valor não exibe boleto');
};
});

Answer

You're comparing two strings here if ( valorBoleto >= valorMinimoBoleto )

You need to first parse them before they can be compared numerically.

E.g:

   var valorMinimoBoleto = '1000,00';
    var valorTratado = $(".valor").html().replace('R$ ','');
    var valorBoleto = valorTratado;

   var parsedValorMinimoBoleto = parseFloat(valorMinimoBoleto);
   var parsedValorBoleto = parseFloat(valorBoleto);


    if (parsedValorBoleto >= parsedValorMinimoBoleto) {           
        console.log('valor exibe boleto');
    } else {
        $('.boleto').hide();
        console.log('valor não exibe boleto');
    };