Submit via Ajax não funciona
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
Curtidas 0
Melhor post
Fernando Gaspar
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!
GOSTEI 1