Foros del Web » Programando para Internet » PHP » Zend »

Utilizando BlockUI de Jquery y zend

Estas en el tema de Utilizando BlockUI de Jquery y zend en el foro de Zend en Foros del Web. 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: ...
  #1 (permalink)  
Antiguo 31/05/2011, 07:23
 
Fecha de Ingreso: julio-2006
Mensajes: 17
Antigüedad: 18 años, 5 meses
Puntos: 1
Utilizando BlockUI de Jquery y zend

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
  #2 (permalink)  
Antiguo 31/05/2011, 08:12
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Utilizando BlockUI de Jquery y zend

Eso ya no lo puedes checar en el servidor, tienes que validar en tiempo real usando AJAX en el cliente, para que puedas obtener los resultados en el cliente.

Saludos.
  #3 (permalink)  
Antiguo 06/06/2011, 19:42
 
Fecha de Ingreso: julio-2006
Mensajes: 17
Antigüedad: 18 años, 5 meses
Puntos: 1
Respuesta: Utilizando BlockUI de Jquery y zend

GatorV lo solucione de la siguiente forma, pero me asalta la duda sobre los echos que aparecen retornando los diferentes mensajes
asi es correcto o hay otra forma? Gracias

public function saveareaAction()
{
if($this->getRequest()->isXmlHttpRequest())
{
$this->_helper->getHelper('layout')->disableLayout();
$this->_helper->viewRenderer->setNoRender();

$formData = $this->_request->getPost();
if($this->_formulario->isValid($formData)){
$area = (string)$this->_formulario->getValue('area');
if($this->_area->agregar($area)){
echo "<strong class='resultadoAjax'>Area Adicionada!</strong>";
}else{
echo "Información Incorrecta!".$area.$formData;
}
}else{

$this->_formulario->populate($formData);
echo $this->view->form = $this->_formulario;
}
}else{
$this->_helper->redirector('index','administrativo');

}

}
  #4 (permalink)  
Antiguo 06/06/2011, 19:47
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Utilizando BlockUI de Jquery y zend

Pues lo más correcto es que regresaras una respuesta en JSON, pero no esta mal lo que haces.

Etiquetas: blockui, frameworks-y-php-orientado-a-objetos, jquery
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:56.