Submit via Ajax não funciona
16/11/2016
0
Tenho 2 funções ajax no meu código para que eu edite algo no banco de dados, um gera o formulário preenchido com os dados da linha a ser editada e traz para uma div na minha página.
A outra função pega os dados desse formulário e altera no banco
A 1ª função funciona corretamente e me traz o formulário correto, mas a 2ª, quando clico em submit, a página só recarrega e não acontece nada, não tem nem vestigio do ajax chamando o arquivo update_pet.php.
O problema pode estar acontecendo porque estou criando o formulário fora de onde está a função submit?
function editar_pet(id,nome){ decisao = confirm('Deseja editar o Pet '+nome); if (decisao) { $.ajax({ url: "http://localhost/server_mvet/editar_pet.php", dataType: "text", type: 'POST', data: {id: id}, success: function(html){ $('#editar_pet').html(html).show(); $('#editar').hide(); $('#editar_pet').show(); }, error: function(){ alert('Erro ao se conectar'); } }); } }
A outra função pega os dados desse formulário e altera no banco
$(".form-edit-pet").submit(function(){ $('#loading').show(); $.ajax({ url:'http://localhost/server_mvet/update_pet.php', type:'post', dataType : "text", data:$(".form-edit-pet").serialize(), success: function(retorno){ if(retorno == '2') { alert("Pet editado com sucesso"); } else if(retorno == 1) { alert("Preencha todos os campos"); } else { alert(retorno); } $('#loading').hide(); }, error: function(){ alert("Não possível se conectar!!"); $('#loading').hide(); } }); return false; });
A 1ª função funciona corretamente e me traz o formulário correto, mas a 2ª, quando clico em submit, a página só recarrega e não acontece nada, não tem nem vestigio do ajax chamando o arquivo update_pet.php.
O problema pode estar acontecendo porque estou criando o formulário fora de onde está a função submit?
Julio Filho
Curtir tópico
+ 0
Responder
Post mais votado
21/11/2016
Fala Julio, beleza?
Pelo o que eu entendi do código, acho que o problema pode ser na ordem de execução a aplicação o javascript é carregado e somente depois é criado o form .form-edit-pet correto? Se for isso realmente não vai funcionar pois quando o script foi executado ainda não existia o form.
Outra questão pode ser o prevent.Default
O comportamento padrão do form é submeter a pagina, com o uso o prevent.default você vai fazer que o form não seja enviado e o seu código continue com a execução normal.
Tenta, esses dois caminhos e depois passa o feed se algum deles funfou!
Abraços!
Pelo o que eu entendi do código, acho que o problema pode ser na ordem de execução a aplicação o javascript é carregado e somente depois é criado o form .form-edit-pet correto? Se for isso realmente não vai funcionar pois quando o script foi executado ainda não existia o form.
Outra questão pode ser o prevent.Default
$(".form-edit-pet").submit(function(event){ event.preventDefault();
O comportamento padrão do form é submeter a pagina, com o uso o prevent.default você vai fazer que o form não seja enviado e o seu código continue com a execução normal.
Tenta, esses dois caminhos e depois passa o feed se algum deles funfou!
Abraços!
Fernando Gaspar
Responder
Clique aqui para fazer login e interagir na Comunidade :)