Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    79

    Problema passaggio valori paginazione

    Salve ho bisogno di aiuto per CMSprecisamente ho una tabella con paginazione jquery su ogni riga della tabella cè una checkbox che mi permette di selezionare i record per poi effettuare con un submit php varie operazioni. il fatto è che se seleziono dei record e poi cambio pagina e ne seleziono altri quando vado a fare il submit mi vengono passati solo i valori della pagina in cui mi trovo e non anche quelli che avevo spuntato nella pagina precedente.

    una demo del CMS la si puo' trovare qui http://themeforest.net/item/admintas..._preview/57479 forse puo servire a capire meglio quello che sto spiegando.


    Questo è il codice javascript della paginazione
    Codice PHP:
    (function($) {
        $.
    extend({
            
    tablesorterPager: new function() {
                
                function 
    updatePageDisplay(c) {
                    var 
    = $(c.cssPageDisplay,c.container).val((c.page+1) + c.seperator c.totalPages);    
                }
                
                function 
    setPageSize(table,size) {
                    var 
    table.config;
                    
    c.size size;
                    
    c.totalPages Math.ceil(c.totalRows c.size);
                    
    c.pagerPositionSet false;
                    
    moveToPage(table);
                    
    fixPosition(table);
                }
                
                function 
    fixPosition(table) {
                    var 
    table.config;
                    if(!
    c.pagerPositionSet && c.positionFixed) {
                        var 
    table.config= $(table);
                        if(
    o.offset) {
                            
    c.container.css({
                                
    //modificato da Pierluigi per risolvere bug che saltava nel footer
                                //top: o.offset().top + o.height() + 'px',
                                //position: 'absolute'
                            
    });
                        }
                        
    c.pagerPositionSet true;
                    }
                }
                
                function 
    moveToFirstPage(table) {
                    var 
    table.config;
                    
    c.page 0;
                    
    moveToPage(table);
                }
                
                function 
    moveToLastPage(table) {
                    var 
    table.config;
                    
    c.page = (c.totalPages-1);
                    
    moveToPage(table);
                }
                
                function 
    moveToNextPage(table) {
                    var 
    table.config;
                    
    c.page++;
                    if(
    c.page >= (c.totalPages-1)) {
                        
    c.page = (c.totalPages-1);
                    }
                    
    moveToPage(table);
                }
                
                function 
    moveToPrevPage(table) {
                    var 
    table.config;
                    
    c.page--;
                    if(
    c.page <= 0) {
                        
    c.page 0;
                    }
                    
    moveToPage(table);
                }
                            
                
                function 
    moveToPage(table) {
                    var 
    table.config;
                    if(
    c.page || c.page > (c.totalPages-1)) {
                        
    c.page 0;
                    }
                    
                    
    renderTable(table,c.rowsCopy);
                }
                
                function 
    renderTable(table,rows) {
                    
                    var 
    table.config;
                    var 
    rows.length;
                    var 
    = (c.page c.size);
                    var 
    = (c.size);
                    if(
    rows.length ) {
                        
    rows.length;
                    }
                    
                    
                    var 
    tableBody = $(table.tBodies[0]);
                    
                    
    // clear the table body
                    
                    
    $.tablesorter.clearTableBody(table);
                    
                    for(var 
    sei++) {
                        
                        
    //tableBody.append(rows[i]);
                        
                        
    var rows[i];
                        var 
    o.length;
                        for(var 
    j=0lj++) {
                            
                            
    tableBody[0].appendChild(o[j]);

                        }
                    }
                    
                    
    fixPosition(table,tableBody);
                    
                    $(
    table).trigger("applyWidgets");
                    
                    if( 
    c.page >= c.totalPages ) {
                        
    moveToLastPage(table);
                    }
                    
                    
    updatePageDisplay(c);
                }
                
                
    this.appender = function(table,rows) {
                    
                    var 
    table.config;
                    
                    
    c.rowsCopy rows;
                    
    c.totalRows rows.length;
                    
    c.totalPages Math.ceil(c.totalRows c.size);
                    
                    
    renderTable(table,rows);
                };
                
                
    this.defaults = {
                    
    size10,
                    
    offset0,
                    
    page0,
                    
    totalRows0,
                    
    totalPages0,
                    
    containernull,
                    
    cssNext'.next',
                    
    cssPrev'.prev',
                    
    cssFirst'.first',
                    
    cssLast'.last',
                    
    cssPageDisplay'.pagedisplay',
                    
    cssPageSize'.pagesize',
                    
    seperator"/",
                    
    positionFixedtrue,
                    
    appenderthis.appender
                
    };
                
                
    this.construct = function(settings) {
                    
                    return 
    this.each(function() {    
                        
                        
    config = $.extend(this.config, $.tablesorterPager.defaultssettings);
                        
                        var 
    table thispager config.container;
                    
                        $(
    this).trigger("appendCache");
                        
                        
    config.size parseInt($(".pagesize",pager).val());
                        
                        $(
    config.cssFirst,pager).click(function() {
                            
    moveToFirstPage(table);
                            return 
    false;
                        });
                        $(
    config.cssNext,pager).click(function() {
                            
    moveToNextPage(table);
                            return 
    false;
                        });
                        $(
    config.cssPrev,pager).click(function() {
                            
    moveToPrevPage(table);
                            return 
    false;
                        });
                        $(
    config.cssLast,pager).click(function() {
                            
    moveToLastPage(table);
                            return 
    false;
                        });
                        $(
    config.cssPageSize,pager).change(function() {
                            
    setPageSize(table,parseInt($(this).val()));
                            return 
    false;
                        });
                    });
                };
                
            }
        });
        
    // extend plugin scope
        
    $.fn.extend({
            
    tablesorterPager: $.tablesorterPager.construct
        
    });
        
    })(
    jQuery); 

    il codice della tabella è questo:

    Codice PHP:
    <form name="myform" class="pager-form" method="post" action="gestione_documenti.php">
    <table class="live_filter">
        <thead>
          <tr>
            <th><input type="checkbox" value="check_all" onclick="this.value=check(this.form.lista)" class="submit"></th>
            <th>Nome</th>
            <th>Tipo</th>
            <th>Stato</th>
            
          </tr>
        </thead>
        <tbody>
          <?php echo $html;?>
        </tbody>
      </table>
      
      <div id="pager"> [url="#"] <span class="ui-icon ui-icon-arrowthickstop-1-w"></span> [/url] [url="#"] <span class="ui-icon ui-icon-circle-arrow-w"></span> [/url]
        <input type="text" class="pagedisplay">
        [url="#"] <span class="ui-icon ui-icon-circle-arrow-e"></span> [/url] [url="#"] <span class="ui-icon ui-icon-arrowthickstop-1-e"></span> [/url]
        <select class="pagesize" id="elementi_pagina" name="elementi_pagina">
          <option value="10" selected="selected">10 risultati</option>
          <option value="20">20 risultati</option>
          <option value="30">30 risultati</option>
          <option value="40">40 risultati</option>
          <option value="<?php echo $num;?>">Tutti i risultati</option>
        </select>
      </div>
    </form>

    questo è uno dei submit:

    Codice PHP:
    <a href="#" onclick="document.myform.action.value='modifica';document.forms['myform'].submit(); return false;"

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    79
    Nessuno che puo' aiutarmi?

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    probabilmente quando esegue clearTableBody()
    (funzione che non e' presente in quello che hai postato)
    rimuove tutto il contenuto della tabella = la vecchia selezione non esiste piu'

    se vuoi risolvere devi tener traccia delle scelte effettuate volta per volta
    o in un altro form che invierai al posto di quello che si sta compilando
    o, se prevedi che i dati da passare siano in numero esiguo, in un solo campo hidden sempre presente nello stesso form

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.