Buenos días, estoy realizando un formulario estilo popup. El envío de variables lo hago con ajax y todo funciona perfecto, el problema aparece cuando quiero obtener la respuesta desde php para poder mostrar el mensaje correspondien.
El código usado es:
Código HTML:
$(function(){
//creación de ventana formulario
$('#form').dialog({
autoOpen:false,
modal:true,
width:500,
height:'auto',
resizable: false,
close:function(){
$('#formRegistro fieldset > span').removeClass('error').empty();
$('#formRegistro input[type="text"]').val('');
$('#formRegistro select > option').removeAttr('selected');
}
});
// funcionalidad del botón que abre el formulario
$('#irNuevaTarea').on('click',function(){
// Asignamos valor a la variable acción
$('#nuevo').val('nuevaTarea');
// Abrimos el Formulario
$('#form').dialog({
title:'Nueva Tarea',
autoOpen:true
});
});
// Validar Formulario
$('#formTarea').validate({
submitHandler: function(){
var str = $('#formTarea').serialize();
// alert(str);
$.ajax({
beforeSend: function(){
$('#formTarea .ajaxLoader').show();
},
cache: false,
type: "POST",
dataType: "json",
url:"../include/datos.php?nuevo=nuevaTarea",
data:str,
success: function(response){
// Validar mensaje de error
if(response.respuesta == false){
alert(response.mensaje);
}
else{
// si es exitosa la operación
$('#form').dialog('close');
}
$('#form .ajaxLoader').hide();
},
error:function(){
alert('ERROR GENERAL DEL SISTEMA, INTENTE MAS TARDE');
}
});
return false;
},
errorPlacement: function(error, element) {
error.appendTo(element.prev("span").append());
}
});
$(function () {
var $btn = $('#btnConfirmar');
$btn.on("click", function () {
ShowDialog();
});
});
});
En la parte envió de formulario se encuentra la función ajax que hace el envió de variables a php y que debería obtener la respuesta correspondiente.