Buenas Carlos,
Quiero hacer algo parecido, quiero conseguir una ventana modal con un form y que al dar al boton la validación se haga dentro de la misma ventana modal.
Tengo una vista ‘login’, donde hay un link que me lanza una vista modal con TbModal, de la siguiente forma:
<a href="#lost-password-modal" data-toggle="modal">Lost password?</a>
y en la misma vista ‘login’ tengo la parte del TbModal:
<?php $this->beginWidget('bootstrap.widgets.TbModal', array(
'id'=>'lost-password-modal',
'options'=>array('keyboard'=>true, 'remote'=>Yii::app()->user->ui->passwordRecoveryUrl),
)); ?>
<div class="modal-header">
<a class="close" data-dismiss="modal">×</a>
<h2>Recovery password</h2>
</div>
<div class="modal-body">
<!--aqui me renderiza la vista del remote -->
</div>
<?php $this->endWidget(); ?>
La vista renderizada por el ‘remote’ dentro del “modal-body” es esta:
<?php if(Yii::app()->user->hasFlash('msgflash')): ?>
<?php $this->widget('bootstrap.widgets.TbAlert', array(
'alerts'=>array(
'msgflash'=>array('closeText'=>'false')
),
)); ?>
<?php else: ?>
<div class="pwdrcv-form">
<?php $form=$this->beginWidget('bootstrap.widgets.TbActiveForm', array(
'id'=>'id-form',
'type'=>'inline',
'enableClientValidation'=>false,
//'performAjaxValidation'=>true,
//'clientOptions'=>array(
// 'validateOnSubmit'=>true,
//),
)); ?>
<?php echo $form->errorSummary($model); ?>
<?php echo $form->textFieldRow($model,'username'); ?>
<?php $this->widget('bootstrap.widgets.TbButton', array(
'buttonType'=>'submit',
'type'=>'success',
'label'=>'Recovery',
'url'=>'#',
)); ?>
<?php $this->endWidget(); ?>
</div>
<?php endif; ?>
Lo que quiero es que el formulario de la vista modal se valide en la misma ventana modal, es decir, que si hay errores porque falta un campo, renderice los mensajes tipicos de (Yii Yii::app()->user->getFlash) que tiene la vista dentro de la ventana modal sin cerrarla.
Imagino que esto hay que hacerlo con ajax, pero… no tengo absolutamente ni idea de ajax, he estado mirando por ahi, he visto algún ejemplo como este y alguno más:
http://yiiframeworkenespanol.org/foro/showthread.php?tid=55
y vale… mas o menos entiendo como funciona, el problema es que al tenerlo en un TbModal no sé como implementarlo.
Alguien me puede dar alguna pista? algun ejemplo actionController + TbModal que pueda ver y entender el funcionamiento? Seria de una gran ayuda.
Muchas gracias de antemano.