Mi enrutador lo tengo asi:
Código:
Ajax:
pattern: /ajax/
defaults: { _controller: UsuarioBundle:Default:ajax }
El controlador que contiene a ajaxAction es:
Código PHP:
public function ajaxAction(){
$nombre=$_POST['nombre'];
$email=$_POST['email'];
$edad=$_POST['edad'];
$respuesta[0]=array("nombre" => $nombre, "email" => $email, "edad" => $edad);
return $this->renderText($respuesta);
}
El javascript es:
Código:
<script type="text/javascript">
$(document).on("ready",function(){
$('#boton').on("click",function(evento){
$.ajax({
beforeSend: function(){
},
url: "{{ path('Ajax') }}",
type: "post",
dataType: "json",
data: {nombre:"maxi",email:"[email protected]",edad:"21"},
success: function(resp){
$('#respuesta').append("<p>"+resp[0]['nombre']+"</p>");
alert(resp);
},
error: function(jqXHR,estado,error){
alert(estado);
alert(error);
},
complete: function(jqXHR,estado){
alert(estado);
},
timeout: 10000
})
});
});
</script>
La verdad es que nose si estoy accediendo bien al controlador con:
Código:
url: "{{ path('Ajax') }}",
Y si estoy retornando de manera correcta el arreglo en json:
Código:
return json_encode($respuesta);
Y por ultimo si estoy accediendo bien a los datos con:
Código:
$('#respuesta').append("<p>"+resp[0]['nombre']+"</p>");