Instead of the ajax command staying on the page, it is being directed to php page

1
   $('#formCadastrarProdutos').submit(function() {
        $.ajax({
        url: '../crud/cadastro_produtos.php',
        type: 'post',
        data:  new FormData(this),            
        cache: false,
        contentType: false,
        processData: false,
        success: function(data){
            if(data == "erronome"){
               $('.erronome').html('Produto já cadastrado.');
            }else{
                alert('Produto cadastrado com sucesso!');
                window.location.reload();
            }
        }        
        });
    });
    
asked by anonymous 10.06.2018 / 00:34

1 answer

1

Cancel the event submit with preventDefault() :

//                  inclua o parâmetro na função que retorna o evento
//                                          ↓
$('#formCadastrarProdutos').submit(function(e) {

    e.preventDefault(); // cancela o evento

    $.ajax({
    url: '../crud/cadastro_produtos.php',
    type: 'post',
    data:  new FormData(this),            
    cache: false,
    contentType: false,
    processData: false,
    success: function(data){
        if(data == "erronome"){
           $('.erronome').html('Produto já cadastrado.');
        }else{
            alert('Produto cadastrado com sucesso!');
            window.location.reload();
        }
    }        
    });
});

Also note that in this line ...

window.location.reload();

... the page is being reloaded. If this is not the intention, just remove it.

    
10.06.2018 / 00:40