Saludos, en mi aplicación estoy utilizando jquery blockUI para que me muestre un formulario para adicionar registros a mi base de datos lo tengo asi:
en la vista listar tengo:
<a class="dock-item" href="javascript: agregarDocente();">
y en esta misma en la parte inferior tengo:
function agregarDocente(){
$("#div_oculto").load("<?php echo $this->baseUrl;?>/administrativo/asignaturas", function(){
$.blockUI({
message: $('#div_oculto'),
css:{
width: '750px',
height: '450px',
border: 'none',
padding: '0px',
left: ($(window).width() - 750) /2 + 'px',
backgroundColor: '#FFF',
top: '50px'
}
});
});
};
hasta aqui todo bien al darle click aparece la ventana superpuesta y me muestra el formulario que esta en la vista "asignatura" , el controller asignatura esta si:
public function asignaturasAction()
{
$this->_formulario->setAction($this->view->baseUrl.'/administrativo/savearea');
if ($this->getRequest()->isXmlHttpRequest()) {
$this->_helper->getHelper('layout')->disableLayout();
if (!$this->getRequest()->isPost()){
$this->view->form = $this->_formulario;
}
}
}
savearea:
public function saveareaAction()
{
if(!$this->getRequest()->isXmlHttpRequest())
{
$formData = $this->_request->getPost();
if($this->_formulario->isValid($formData)){
$area = (string)$this->_formulario->getValue('area');
if($this->_area->agregar($area)){
$this->view->mensaje ="Area Adicionada!";
}else{
$this->view->mensaje ="Información Incorrecta!";
}
}else{
$this->_formulario->populate($formData);
$this->view->form = $this->_formulario;
}
}
}
hasta aqui se guarda la información digitada pero hay dos cosas que me parecen estan funcionando en forma incorrecta:
1- cuando de comente un error al digitar algo en el formulario este muestra los errores en la vista savearea.phtml y no en el blockUI .
2- cuando presiono el boton guardar me envia a saveareaAction() segun el setAction pero deseo recibir un mensaje en el blockUI de "operacion exitosa" o que me muestre el listado actualizado.
Gracias por las sugerencias