This is a Dojo question really, but I think the answer you're looking for is
to use
dojo.stopEvent(evt);
to prevent the default behaviour (in this case, the browser navigating to a
new page).

Hope that helps,
Mark


dele454 wrote:
> 
>  http://www.nabble.com/file/p23310898/pag.gif 
> 
> I'm not sure if this is the right place to post it but i'll simply go
> ahead.
> 
> From the view above the table's data uses the Zend_Paginator to return the
> data from the db. 
> 
> The following describes what i am doing:
> 
> - I am trying to control the pages using Ajax without having to reload the
> whole page. 
> 
> - The table is housed in a DIV container called 'table_sort'. 
> 
> - Each of those numbered page links has an id of lnk1, lnk2 etc.
> 
> - Depending on which link is clicked the page no is sent to the controller
> which then populates its view script and that gets sent back to the AJAX
> callback action which then inserts all the contents of the viewscript into
> the DIV Container mentioned above
> 
> The whole system works but only by clicking once on any of those links the
> table is populated and the control shows the present page number. But the
> moment i click on another pagination link the whole page reloads.
> 
> So my question is this is there a way of not having this behaviour? Can js
> recognise the ids of the newly insert control after table have been
> populated?
> 
> 
> Any help offered will be deeply appreciated. Thanks
>  
> 
> Here is my js code:
> 
> dojo.addOnLoad(function(){
>                                               
> dojo.query("[id^=lnk]") . onclick(function(evt){
> 
>     evt.preventDefault();
>       var source = evt.target.id;
>       
>        var page      = source.substr(3); 
>       
>        dojo.xhrGet({
>                                
>                                url: "/venues/pagination-table/page/" + page,
>                                handleAs: "text",
>                                load: function(response){
>                                                                               
>                                          
>                                           dojo.byId("table_sort") . innerHTML 
> = response;
>                                               return response;
>                                }
>                               
>                                });
>       
>                                                                 
>                                                                               
>           
>                                                                               
>           
>        });
> 
> 
> Action controller:
> 
> public function paginationTableAction(){
>                           
>                                       $this->_helper->layout->disableLayout();
>                               
>                                       $venues         = new Venues();
>                                       $allVenues      = 
> $venues->getEventsPerVenue();
>                                       
>                                       $paginator = 
> Zend_Paginator::factory($allVenues);  
>                                       //tell the paginator which page we're 
> on  
>                                       
> $paginator->setCurrentPageNumber($this->_getParam('page'));  
>                                       
>                                         //get page no from url 
>                                       $page        = 
> $this->_request->getParam('page');
>                                       $paginator->setCurrentPageNumber($page);
>                                       $paginator->setItemCountPerPage(3);
>                                       $this->view->paginator = $paginator;  
>                               
>                               
>                               }
> 
> 
> View script:
> 
> <?php 
>                        
>                           $venues            = $this->getNewVenues;
>                               ?>
> 
> <table width="585" border="0" cellpadding="0" cellspacing="1"
> class="data">
>                                                         <tr>
>                                                               <td width="250" 
> class="heading" id="left_bg">  Venue  "<?=$this-
> baseUrl()?>/img/venues/ddown2.gif" alt="sort"  width="5" height="3"/>
> </td>
>                                                               <td width="140" 
> class="heading" >  Category  "<?=$this-
> baseUrl()?>/img/venues/ddown2.gif" alt="sort"  width="5" height="3"/>
> </td>
>                                                               <td width="120" 
> class="heading" >  Area   "<?=$this-
> baseUrl()?>/img/venues/ddown2.gif" alt="sort"  width="5" height="3"/>
> </td>
>                                                               <td width="65" 
> class="heading" id="right_bg">  Events  "<?=$this-
> baseUrl()?>/img/venues/ddown2.gif" alt="sort"  width="5" height="3"/>
> </td>
>                                                         </tr>
>                                                         
>                                                                               
>                                 
>                                                               
>                                                                               
>                                                                               
>                           
> 
>                                                         <?php foreach 
> ($this->paginator as $item){ ?>  
>                                                                 
>                                                               <tr>
>                                                               <td 
> class="left_bg2"> "/venue/details/id/<?=$item['VenueID'];?
> "><?=$item['VenueName'];?> </td>
>                                                               <td 
> class="table_data2"><?=$item['CategoryName'];?></td>
>                                                               <td 
> class="table_data2"><?=$item['Area'];?></td>
>                                                               <td 
> class="right_bg2"><?=$item['Events'];?></td>
>                                                         </tr>
>                                                         <?}
>                                                          ?>                   
>                                   
>                                                           
>                                         </table>
>                                         
>                                         <!-- pagination control insert-->
>                                         <?= 
> $this->paginationControl($this->paginator, 'Elastic',
> '../partials/_pagination_control.phtml'); ?>
> 
> 
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Zend_paginator-%2B-AJAX-controls-tp23310898p23315675.html
Sent from the Zend Framework mailing list archive at Nabble.com.

Reply via email to