2009-06-09 10 views
0

J'ai une page ASP.NET simple avec support de pagination. Fondamentalement seulement des liens qui ressemblent à ceci:Suivant/Précédent (CTRL ->/<- CTRL) raccourcis clavier dans javascript dans ASP.NET

report.aspx & page = 1
report.aspx & page = 2
etc

Comment pourrais-je mettre en place un raccourci clavier pour que je puisse passer à la page suivante et à la page précédente en maintenant simplement Ctrl et en appuyant sur ou ?

J'ai vu cette fonctionnalité implémentée sur certains forums de discussion, mais je n'arrive pas à comprendre comment le faire.

Répondre

1

Voir http://www.artlebedev.com/tools/technogrette/js/arrow-navigation/

<link rel="prev" href="report.aspx&page=1" id="PrevLink" /> 
<link rel="next" href="report.aspx&page=2" id="NextLink" /> 

. . . 

<script language="javascript" type="text/javascript"> 
document.onkeydown = NavigateThrough; 

function NavigateThrough (event) 
{ 
    if (!document.getElementById) return; 

    if (window.event) event = window.event; 

    if (event.ctrlKey) 
    { 
    var link = null; 
    switch (event.keyCode ? event.keyCode : event.which ? event.which : null) 
    { 
     case 0x25: 
     link = document.getElementById ('PrevLink'); 
     break; 
     case 0x27: 
     link = document.getElementById ('NextLink'); 
     break; 
    } 

    if (link && link.href) document.location = link.href; 
    }   
} 
</script> 
+0

ne semble pas fonctionner dans IE8: codeTouche est nulle ou non un objet. – AlexKelos

+0

Oups, apparemment cette ligne est requise: if (window.event) event = window.event; J'ai mis à jour l'exemple de http://img.artlebedev.ru/svalka/navigate.js –