Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Zend framework Zend_Dojo_表单不显示的ZF1和dijit选项卡容器_Zend Framework_Tabs_Dojo - Fatal编程技术网

Zend framework Zend_Dojo_表单不显示的ZF1和dijit选项卡容器

Zend framework Zend_Dojo_表单不显示的ZF1和dijit选项卡容器,zend-framework,tabs,dojo,Zend Framework,Tabs,Dojo,我构建了一个Zend_Dojo_表单,希望在视图中显示它。在这个视图中,它将显示在选项卡容器中 但是表单从来没有显示过,尽管它出现在代码视图中,我使用的dijit菜单也会从页面中消失。 只有当我在选项卡容器中打印表单时,才会发生这种情况,因为在表单中看不到任何奇怪的内容 <script type="text/javascript"> dojo.require("dijit.layout.TabContainer"); dojo.require("dijit.layou

我构建了一个Zend_Dojo_表单,希望在视图中显示它。在这个视图中,它将显示在选项卡容器中 但是表单从来没有显示过,尽管它出现在代码视图中,我使用的dijit菜单也会从页面中消失。 只有当我在选项卡容器中打印表单时,才会发生这种情况,因为在表单中看不到任何奇怪的内容

<script type="text/javascript">
    dojo.require("dijit.layout.TabContainer");
    dojo.require("dijit.layout.ContentPane");
</script>
<?php 
$this->form->setAttrib("Height", "450px")->setAttrib("WIDTH", "550px");
 ?>
<div dojoType="dijit.layout.TabContainer" style="width: 600px; height: 400px;"
tabPosition="left-h" tabStrip="true" doLayout="false">
    <div dojoType="dijit.layout.ContentPane" title="Grupo: <?php print $this->idacgroup ?>" selected="true">
        <span><?php print $this->form ?></span>
    </div>
    <div dojoType="dijit.layout.ContentPane" title="Anexar utilizador">
        Lorem ipsum and all around - second...
    </div>
    <div dojoType="dijit.layout.ContentPane" title="Remover Utilizador">
        Lorem ipsum and all around - last...
    </div>
</div>

我通过使用Zend_视图功能构建布局和tabContainer解决了这个问题,这就是我使用的代码

<?php

$this->tabContainer()->captureStart('main-container',
                                    array('design' => 'headline'),
                                    array(
                                        "tabPosition" => 'left',
                                        'style'=>'height:400px;width:800px'
                                     ));

echo $this->contentPane(
 'form1',
 $this->form,
 array('region' => 'top','title'=>'Grupo:' . $this->idacgroup),
 array('style' => 'background-color: white;')
);

$join = $this->render("group/join.phtml");

echo  $this->contentPane(
     'usersadd',
     $join,
     array('region' => 'left', 'title'=>'Adicionar Utilizadores'),
     array('style' => 'width: 200px; background-color: white;')
    );

$this->nstore++;

$unjoin = $this->render("group/join.phtml");

echo $this->contentPane(
 'userdel',
 $unjoin,
 array('region' => 'center','title'=>'Remover Utilizadores'),
 array('style' => 'background-color: white;')
);



echo $this->tabContainer()->captureEnd('main-container');

这很好,我做了另一件事,在join.phtml代码中,我在数据存储中使用了一个div,这导致了相同的问题并破坏了HTML,所以我将div更改为数据存储的span。

为什么要将表单放在span中?和您的表单中有什么?如果表单输出位于不同的标记中,则span仅用于测试表单输出,以防止dojo表单的div附加到以前的div容器。最终我解决了这个问题。我的表单有普通元素没有什么特别的它是用Zend_Dojo_表单构建的