Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
Je développe une application avec zend et j'aimerais utiliser dojo.
J'ai donc fait ce qui suit.
Bootstrap.php :
public function _initViewHelpers() { $this->bootstrap('layout'); $layout = $this->getResource('layout'); $view = $layout->getView(); $view->addHelperPath('Zend/Dojo/View/Helper', 'Zend_Dojo_View_Helper'); $view->dojo()->enable(); }
mon layout.phtml
<?php echo $this->doctype() ?> <html> <head> <?php echo $this->headTitle() ?> <?php echo $this->headMeta() ?> <?php echo $this->headLink() ?> <?php echo $this->headStyle() ?> <?php if ($this->dojo()->isEnabled()){ $this->dojo()->setLocalPath('/js/dojo/dojo.js') ->addStyleSheetModule('dijit.themes.claro'); echo $this->dojo(); } ?> <?php echo $this->headScript() ?> </head> <body class="claro"> <?php echo $this->layout()->content ?> <?php echo $this->inlineScript() ?> </body>
et mon index.phtml :
<script type="text/javascript"> dojo.addOnLoad(function() { // our test data store for this example: var store4 = new dojo.store.JsonRest({ target: '/guestbook/test' }); storeData = new dojo.data.ItemFileReadStore( { data:store4 } ); // set the layout structure: var layout4 = [{ field: 'Title', name: 'Title of Movie', width: '200px' }, { field: 'Year', name: 'Year', width: '50px' }, { field: 'Producer', name: 'Producer', width: 'auto' }]; // create a new grid: var grid4 = new dojox.grid.DataGrid({ query: { Title: '*' }, store: storeData, clientSort: true, rowSelector: '20px', structure: layout4 }, document.createElement('div')); // append the new grid to the div "gridContainer4": dojo.byId("gridContainer4").appendChild(grid4.domNode); // Call startup, in order to render the grid: grid4.startup(); }); <div id="gridContainer4" style="width: 100%; height: 100%;"> </div> <?php // setup required dojo elements: $this->dojo()->enable() ->setDjConfigOption('parseOnLoad', true) ->requireModule('dojo.store.JsonRest') ->requireModule('dojo.data.ObjectStore') ->requireModule('dojo.data.ItemFileReadStore') ->requireModule('dojox.data.QueryReadStore') ->requireModule('dojox.grid.DataGrid') ->addStyleSheet('/js/dojox/grid/resources/claroGrid.css') ->addStyleSheet('/js/dojox/grid/resources/Grid.css'); ?>
Quand j'essaie d'accéder à localhost/guestbook, la page est rendue mais pas de datagrid, c'est comme si le javascript n'était pas activé...
L'url localhost/guestbook/test renvoie un objet json bien construit.
Et dans firebug, aucune erreur javascript, et les script sont bien chargés (dojo.js et ses modules) ainsi que les feuilles css.
Je ne comprend pas ce qu'il se passe, si quelqu'un pourrait me donner une piste
Merci!
Hors ligne
Pages: 1