selezionare tutto l'aiuto casella di impaginazione richiesta

voti
0

Al momento ho un rapporto con impaginazione che consente di visualizzare 10 record per pagina.

All'interno di questo rapporto, ho anche una colonna casella di controllo per ogni record. Basato su questo,

Voglio incorporare una funzione Seleziona tutto, così in base alla mia scenario che mostra 10 record, quando premo l'opzione Check All, vorrei controllare tutti i record visibili (10 alla volta) in quella pagina ( pageno = 3) e dopo l'eliminazione di tali 10 record, la pagina deve essere reindirizzato alla stessa pagina (filename.php) con lo stesso numero di pagina (pageno = 3).

www.example.com/filename.php?pageno=3

È pubblicato 14/07/2009 alle 08:07
fonte dall'utente
In altre lingue...                            


2 risposte

voti
0

Questo potrebbe essere risolto utilizzando Javascript. Come si fa a definire i nomi delle caselle di controllo?

Si potrebbe fare un ciclo for per cambiare lo stato di tutte le caselle di controllo che vengono mostrati in questo momento.

Se stai usando un javascript toolkit / framework come jQuery questo è molto facile. Per esempio si potrebbe dare alla classe .page- [NUM] per tutte le caselle di controllo in una pagina e quindi utilizzare:

$(".page-[NUM]").each(function()
{
this.checked = checked_status;
}); 

Oppure, se si utilizza lo stesso nome per ogni casella di controllo su una pagina, prova:

$("input[@name=thename]").each(function()
{
this.checked = checked_status;
}); 

dove "theName" sarebbe il nome dei tuoi caselle di controllo in quella pagina.

Risposto il 14/07/2009 a 08:22
fonte dall'utente

voti
1

Utilizzando alcuni framework come jQuery renderà la vostra vita molto più facile. Supponiamo che segue è la struttura dei record:

<table id="report">
    <tr><td> <input type="checkbox" id="tr1" /></td><td>..</td><td>...</td></tr>
    <tr><td> <input type="checkbox" id="tr2" /></td><td>..</td><td>...</td></tr>
    <tr><td> <input type="checkbox" id="tr3" /></td><td>..</td><td>...</td></tr>
    <tr><td> <input type="checkbox" id="tr4" /></td><td>..</td><td>...</td></tr>
    <tr><td> <input type="checkbox" id="tr5" /></td><td>..</td><td>...</td></tr>
</table>

<input type="checkbox" id="chkAll"/> Select All.

Il seguente codice (usando jQuery) farà il necessario:

<script type="text/javascript">
    $(document).ready(function(){
        $("#chkAll").change(function(){
            if($("#chkAll").is(":checked")){
                $("#report tr td:first-child").find("input:checkbox")
                        .attr("checked","checked");
            }else{
                $("#report tr td:first-child").find("input:checkbox")
                       .attr("checked","");
            }
        });
    });
</script>

EDIT: - in base al codice, provare a sostituire il vostro boxes_checkall funzione con questo codice;

funzione boxes_checkall (a, b) {var CBS = a.getElementsByTagName ( 'ingresso');

        for(var i=0;i<cbs.length;i++)
        {
           if(cbs[i].type.toLowerCase()=='checkbox')
           {
               cbs[i].checked = b==1;
           }
        }
   }
</script>
Risposto il 14/07/2009 a 08:57
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more