2011-08-31 10 views
0

Dans mon application Web, je souhaite ouvrir une nouvelle page lorsque l'utilisateur appuie sur la touche F2.Comment capturer la touche "F2" dans les formulaires Web asp.net

J'ai trouvé que c'est possible avec le script Java, donc j'écris du code en Java mais ça ne marche que dans Firefox, ça ne marche pas dans Ie ou Chrome.

Peut-on vérifier le corps?

Merci beaucoup

<body onkeypress="onkeydown(event)" > 

    <script src="jquery-1.4.2.min.js" type="text/javascript"></script> 
<script language="javascript" type="text/javascript"> 
     function onkeydown(e) { 
      var intKey; 
      if(window.event) 
      { 
       intKey = e.keycode  

      } 
      else 
      {    
       intKey = e.which; 
      }   

      if(intKey == 113) 
      { 
      window.open("HelpFile/index.html"); 
      }   

     } 
    </script> 

Code de travail:

<script src="jquery-1.4.2.min.js" type="text/javascript"></script> 
    <script language="javascript" type="text/javascript"> 

    document.onkeydown = function(event){ 
    if(window.event && window.event.keyCode == 113) 
    { 
     window.open("HelpFile/index.html"); 
    } 
    else if(event.which == 113) 
    { 
     window.open("HelpFile/index.html"); 
    } 

    } 
</script> 
+1

C'est 'keyCode', pas' keycode' (notez le C majuscule). –

Répondre

1
document.onkeydown = function(){ 
if(window.event && window.event.keyCode == 122) 
{ 
alert(window.event.keyCode + " is pressed"); 
} 
+0

Salut henry, cela fonctionne dans Ie et chrome, mais il a cessé de travailler dans Firefox. Depuis window.event n'est pas un événement connu dans firefox. Si j'utilise à la fois le code (ur et le mien), alors il fonctionne bien. mais pour une raison quelconque, c'est-à-dire lancer une erreur ** l'objet ne supporte pas cette propriété ou méthode **. – Vin05

+0

désolé mon mauvais. ça marche maintenant. merci beaucoup – Vin05

+0

Pas de problème mate. –

1

Il devrait être e.keyCode et non e.keycode.

4

Puisque vous utilisez jQuery, utilisez jQuery:

$(document).keydown(function (event) { 
    var f2Key = 113; 
    if (event.which == f2Key) { 
     alert('you pressed F2'); 
    } 
}); 

Et je trouve utile de documenter les nombres magiques tels que 113 en utilisant une variable bien nommée comme f2Key.

Questions connexes