// adiciona a função ao evento onclick do botão $("#bt_enviar").click( function (){
// recupera do form os valores dos campos var destino = $("#nome").val(); var mensagem = $("#mensagem").val(); var mensagem = $("#fone").val(); var mensagem = $("#cidade").val(); var mensagem = $("#email").val(); var mensagem = $("#assunto").val(); var mensagem = $("#conteudo").val();
// inicia o metodo .ajax $.ajax( { // Tipo de envio dos dados // pode ser GET ou POST type: "POST", // especifica a pagina para onde // serão enviados os dados url: "envia_ouvidoria.php", /* define o formato de retorno. foi escolhido html para o exemplo, mas pode ser tambem : json : xml : script */ dataType: "html", /* envia as variaveis por parametro para o arquivo */ data: "controle=1&destino="+destino+"&mensagem="+mensagem , /* define a função que será executada quando a requisição obtiver sucesso. A variavel msg é o resgate dos dados. */ success: function(msg){ // limpa o span para nova entrada $("#loading_ajax").html(""); if(msg == 1){ // define a cor da fonte para o span $("#loading_ajax").css({ color: "green" }); // escreve o html dentro do span $("#loading_ajax").html("Mensagem enviada com sucesso!"); } else { // define a cor da fonte para o span $("#loading_ajax").css({ color: "red" }); // escreve o html dentro do span $("#loading_ajax").html("Houve um erro ao enviar a mensagem."); } }, /* define as ações que serão executadas antes de iniciar a requisição */ beforeSend: function(){ // define a cor da fonte para o span $("#loading_ajax").css({ color: "black" }); // escreve o html dentro do span $("#loading_ajax").html("Enviando mensagem ..."); } } )
} );
});[/codebox]
Editado por fercosmig Utilize tags de código, facilitam a visualização.
Pergunta
Dargo
O projeto é todo em css e jquery, os links levam para uma <div>, pois ai tudo funciona, mas...
há um formulário, ele carrega na div, mas quando clico no botão ele abre outra página, e não na div,
(Usando o plugin ajax.form), se fizer o formulario normal, ou seja sem o jquery, ele não submita e volta para a página inicial do site??
segue os scripts:
função usada para os link's: <script type="text/javascript"> $(document).ready(function(){ $("#centro").ajaxStart(function(){ }); $('a').livequery('click',function(){ $("#centro").load(this.href).fadeIn(); return false; }); }); </script>o formulario arquivo de resposta:if (@mail("email@servidor.com", $assunto, $msg, $headers)) { echo "1"; } else { echo "0"; } else { die(); } ?>script que faz o serviço:
jQuery(function($){
Editado por fercosmig// adiciona a função ao evento onclick do botão
$("#bt_enviar").click(
function (){
// recupera do form os valores dos campos
var destino = $("#nome").val();
var mensagem = $("#mensagem").val();
var mensagem = $("#fone").val();
var mensagem = $("#cidade").val();
var mensagem = $("#email").val();
var mensagem = $("#assunto").val();
var mensagem = $("#conteudo").val();
// inicia o metodo .ajax
$.ajax(
{
// Tipo de envio dos dados
// pode ser GET ou POST
type: "POST",
// especifica a pagina para onde
// serão enviados os dados
url: "envia_ouvidoria.php",
/*
define o formato de retorno.
foi escolhido html para o exemplo,
mas pode ser tambem
: json
: xml
: script
*/
dataType: "html",
/*
envia as variaveis por parametro para o arquivo
*/
data: "controle=1&destino="+destino+"&mensagem="+mensagem ,
/*
define a função que será executada
quando a requisição obtiver sucesso.
A variavel msg é o resgate dos dados.
*/
success: function(msg){
// limpa o span para nova entrada
$("#loading_ajax").html("");
if(msg == 1){
// define a cor da fonte para o span
$("#loading_ajax").css({ color: "green" });
// escreve o html dentro do span
$("#loading_ajax").html("Mensagem enviada com sucesso!");
} else {
// define a cor da fonte para o span
$("#loading_ajax").css({ color: "red" });
// escreve o html dentro do span
$("#loading_ajax").html("Houve um erro ao enviar a mensagem.");
}
},
/*
define as ações que serão executadas
antes de iniciar a requisição
*/
beforeSend: function(){
// define a cor da fonte para o span
$("#loading_ajax").css({ color: "black" });
// escreve o html dentro do span
$("#loading_ajax").html("Enviando mensagem ...");
}
}
)
}
);
});[/codebox]
Utilize tags de código, facilitam a visualização.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.