我的任务是使用Zend 1.11 Framework制作响应式注册表单。原始开发人员使用TINY box 2显示来自全局javascript文件的非响应形式,其中包含:
path = '/registration/reg-latest?format=html';
urlpath = window.location.protocol + "//" + location.hostname + (location.port ? ':' + location.port : '') + path;
setTimeout(function(){TINY.box.show({iframe:urlpath,width:false,height:false,opacity:0,boxid:' regbox',close:false});} ,4000);
我安装了jquery 2.1.1和Boostrap 3.2.2并使用此代码适当地进行了响应式模式缩放:
<script>
function closePreRegModal() {
$('#prModal').modal('toggle');
};
$(document).ready(function(){
setTimeout(function(){
$('#prModal').modal('show');
},4000);
$('.modal').on('shown.bs.modal', function () {
$(this).find('input[type=text]').filter(':visible:first').focus();
})
});
</script>
<div class="modal fade" id="prModal" tabindex="-1">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<p class="modal-title"><b><span class="preregTitle">Sample Title!</span></b></p>
</div>
<div class="modal-body">
<?php echo $this->data->formStuff; ?>
</div>
<div class="modal-footer">
</div>
</div>
</div>
</div>
和
从php文件中调用它:
//$this->renderScript('registration/reg-latest.phtml');
//$this->_helper->viewRenderer('/registration/reg-latest', null, true);
//$this->_helper->viewRenderer->setRender('/registration/reg-latest', null, true);
//$this->render('/registration/reg-latest', null, true);
所有这些线都产生没有体形内容的模态。大多数这些行都会替换页面主垂直部分中的html,而不是仅仅是页面上的弹出窗口。
我无法从PersonsController触发RegistrationController中的相应操作。人员信息列表填充页面,但我无法执行弹出窗体,触发RegistrationController操作以填充$ viewData-&gt;表单内容。我可以渲染.phtml脚本,但表单内容为空。
我已经阅读了很多Zend文档。我没能用LightBox和FancyBox实现同样的功能。有没有人对Zend 1.11的Responsive Modal Forms有建议或经验?感谢。