我正在尝试使用Zend Framework Forms重新加载网页。第一次加载页面看起来很好。然后我点击我的网页中的操作,如下所示:
<a style="color:#FFF" href="/admin/showMedia/1" class="">Today </a>
在我的控制器程序中处理逻辑时,它会在表单中返回我想要的新数据,但大部分表单布局都会丢失。以下是我的控制器逻辑:
public function showmediaAction()
{
$thistype = 0;
$type = ( int )$this->params()->fromRoute('id', 0)
if(isset($type))
$thistype = $type;
$d = $this->getServiceLocator()->get('Mytable\Data\Db');
$response = $d->getThisTable()->geTotalCount();
$mediacount = $response;
$todaycount = 0;
$totalcount = 0;
if($thistype == 1)
{
$todaycount = $this->getTodayCount($d);
$count = count($todaycount);
$i = 0;
$totalcount = 0;
for($i = 0; $i < $count; $i++)
{
$totalcount += $todaycount[$i];
}
}
$this->viewModel = new ViewModel();
$this->viewModel->setTemplate('mydir/admin/show-media.phtml');
$this->viewModel->setVariables(array(
'mediacount' => $mediacount,
'todaycount' => $todaycount,
'todaytotalcount' => (string)$totalcount
));
return $this->viewModel;
}
那么为什么我的表单第二次通过这个逻辑没有正确呈现。第一次加载页面时,我会显示一个警告。当第二次执行上述逻辑时,不显示警报,这意味着表单未被重新加载。我对Zend相当新,并且非常感谢我如何以编程方式强制重新加载Zend表单。
我有更多关于这个问题的背景知识。问题是在第二次加载网页时,找不到脚本文件。这些脚本文件在layout.phtml文件中定义为../js/myscript.js,而在运行第二次加载时,chrome控制台显示它正在查看admin / js / myscript.js,这是不正确的目录。那么为什么第二次加载网页时,指向javascript目录的指针会发生变化?
答案 0 :(得分:0)
使用js文件的绝对路径。