zaznacz pole wyboru paginacji pomocy wszelkich wymaganych

głosy
0

Obecnie mam raport z paginacji, który wyświetla 10 rekordów na stronie.

W ramach tego raportu, mam również kolumny pole wyboru dla każdego rekordu. Oparte na tym,

Chcę do włączenia „Zaznacz wszystko” funkcji, więc na podstawie mojego scenariusza, który wyświetla 10 rekordów, kiedy nacisnąć pole „Zaznacz wszystko”, chciałbym, aby sprawdzić wszystkie widoczne rekordy (10 jednocześnie) w danej strony ( pageno = 3) i po usunięciu tych rejestrów 10, strona powinna być skierowane na tę samą stronę (filename.php) z tym samym numerem strony (pageno = 3).

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

Utwórz 14/07/2009 o 08:07
źródło użytkownik
W innych językach...                            


2 odpowiedzi

głosy
0

To może być rozwiązany za pomocą JavaScript. Jak zdefiniować nazwy wyboru?

Można to zrobić dla pętli, aby zmienić status wszystkich wyboru, które są pokazane w tej chwili.

Jeśli używasz javascript toolkit / ramy jak jQuery jest to bardzo łatwe. Dla przykładu można podać klasę .page- [NUM] do wszystkich pól na stronie, a następnie użyć:

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

Lub jeśli używasz tej samej nazwy dla każdego wyboru na stronie, spróbuj:

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

gdzie „thename” będzie nazwą Twojego wyboru na tej stronie.

Odpowiedział 14/07/2009 o 08:22
źródło użytkownik

głosy
1

Stosując pewne ramy jak jQuery uczyni Twoje życie o wiele łatwiejsze. Załóżmy Poniżej struktura dokumentacji:

<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.

Poniższy kod (przy użyciu jQuery) zrobi co konieczne:

<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: - oparty na kodzie, spróbuj wymienić swoje boxes_checkall funkcję z tego kodu;

Funkcja boxes_checkall (a, b) {var CBS = a.getElementsByTagName ( 'wejście');

        for(var i=0;i<cbs.length;i++)
        {
           if(cbs[i].type.toLowerCase()=='checkbox')
           {
               cbs[i].checked = b==1;
           }
        }
   }
</script>
Odpowiedział 14/07/2009 o 08:57
źródło użytkownik

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