J'ai actuellement un rapport avec pagination qui affiche 10 enregistrements par page.
Dans ce rapport, j'ai également une colonne de case à cocher pour chaque enregistrement. Basé sur ceci,
Je veux incorporer une fonction "Tout vérifier", doncen fonction de mon scénario qui affiche 10 enregistrements, lorsque j'appuie sur la case à cocher "Tout vérifier", je voudrais vérifier tous les enregistrements visibles (10 à la fois) dans cette page (pageno = 3) et après avoir supprimé ces 10 enregistrements, le la page doit être redirigée vers la même page (filename.php) avec le même numéro de page (pageno = 3).
www.example.com/filename.php?pageno=3
Réponses:
1 pour la réponse № 1L'utilisation d'un framework comme jQuery vous facilitera la vie. Supposons que la structure de vos enregistrements soit la suivante:
<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.
Le code suivant (utilisant jquery) fera le nécessaire:
<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: - en fonction de votre code, essayez de remplacer votre boxes_checkall fonctionner avec ce code;
fonction boxes_checkall (a, b) { var cbs = a.getElementsByTagName ("entrée");
for(var i=0;i<cbs.length;i++)
{
if(cbs[i].type.toLowerCase()=="checkbox")
{
cbs[i].checked = b==1;
}
}
}
</script>
0 pour la réponse № 2
Cela pourrait être résolu en utilisant Javascript. Comment définissez-vous les noms des cases à cocher?
Vous pouvez faire une boucle for pour modifier l'état de toutes les cases à cocher qui sont affichées pour le moment.
Si vous utilisez une boîte à outils / framework javascript comme jQuery, c'est très simple. Par exemple, vous pouvez attribuer la classe .page- [NUM] à toutes les cases à cocher d'une page, puis utiliser:
$(".page-[NUM]").each(function()
{
this.checked = checked_status;
});
Ou si vous utilisez le même nom pour chaque case à cocher sur une page, essayez:
$("input[@name=thename]").each(function()
{
this.checked = checked_status;
});
où "nom" serait le nom de vos cases à cocher sur cette page.