My function js does not want to stop

Asked

Viewed 42 times

2

verificaseTemDado don’t want to stop when I give one clearInterval in the success

$('.arquivo').on('click',function() {
    setInterval(verificaSeTemDado,1000);
});
function verificaSeTemDado() {

    verifica = $('.arquivo').val();
    if(verifica == "") {

console.log('NENHUM ARQUIVO SELECIONADO');

    }else{
        console.log('ha um arquivo selecionado');


var form = $('#formdologo')[0];
var dados = new FormData(form);

$.ajax({
    url:'ajaxDoLogo.php',
    type:'post',
    data:dados,
    contentType:false,
    processData:false,
    beforeSend: function() {
        console.log("ENVIANDO AGUARDE...");

    },
    success:function(res) {
        console.log(res);
        $('.fundo').attr('src','../imgMarketing/'+res);
        $('.fundo').attr('style','width:100%; height:250px;');
        clearInterval(verificaSeTemDado);

    },
    complete:function() {
        console.log("IMAGEM ENVIADA COM SUCESSO");


    }


});


    }
}
function vazei() {
    console.log('karalho sai daquela porra');

}

$('.nomeEmpresa').attr('style','position:absolute; margin-top:-200px');
$('.fundo').attr('style','margin-top:70px; width:100%;height:259px;');

$('.nome').on('keyup',function() {

nome = $('.nome').val();
$('.nomeEmpresa').text(nome);

});
</script>

1 answer

0


You’re doing it wrong. Your setInterval has no name, so it keeps running. verificaSeTemDado is a function called in the range, not the setInterval.

Do the following, assign a variable to your setInterval:

temporizador = setInterval(verificaSeTemDado,1000);

And finish him off with:

clearInterval(temporizador);
  • I’m glad you told me otherwise I’d spend 2 days...

Browser other questions tagged

You are not signed in. Login or sign up in order to post.