2012-10-02 2 views
0

J'ai une implémentation de "RichFacesPleaseWaitBox" dans mon application, mais j'ai un problème.Comment bloquer la clé "esc" sur RichFacesPleaseWaitBox?

Lorsque l'utilisateur initie une action, l'état démarre et affiche l'attente modale. Lorsque l'action termine l'exécution, le statut se termine, masquant le modal "Attente". Jusqu'à ici tout va bien.

Cependant, si l'utilisateur démarre l'action, appuyez sur la touche "ESC", le modal "Waiting" qui était apparu, il disparaît, permettant à l'utilisateur de cliquer à nouveau sur l'action, en faisant une nouvelle soumission. Comment puis-je bloquer "ESC" pour obtenir une solution de contournement pour ce problème?

J'ai essayé cela dans mon modalPanel, mais ne fonctionne pas.

<rich:hotKey id="hotKeyModalPanelSTATUS" 
handler="alert('false');" 
key="esc" />  
+0

non trouver la solution. https://community.jboss.org/message/763062#763062 poster dans le forum richFaces aucun résultat –

+0

N'a jamais essayé ce modal, mais s'il est basé sur jquery modal, vous pouvez désactiver esc sur le chargement de la page comme décrit ici: http://kylefox.ca/jquery-modal/examples/index.html (exemple 5) – nigi

Répondre

2

Si je suis votre point correct:

Importer un fichier mousetrap.js, suivez les jquery documentation, et enfin faire un code comme celui-ci (sur vous modales événement montré, bien sûr):

Mousetrap.bind('esc', function(event){ 
    event.preventDefault(); 
    return false; 
}); 

vous pouvez également délier l'événement dans l'événement peau du modal, donc, vous pouvez faire ce qui suit sur l'événement hide :

Mousetrap.unbind('esc'); 

Espérons que ça aide.

+0

ça marche bien. Ty –

0

Eh bien, pour l'instant:
utilisant onkeydown et bloquer toute esc dans mon application.
sur la première charge de:

document.onkeydown 

simple:

if(event.keyCode == 27) 
return false; 

mais, si je veux dire "Bonjour, u appuyez sur la touche Echap" dans une fonction ou d'une fenêtre .. Je ne peux pas .. est une solution hardcore.

Si quelqu'un a une meilleure solution, bloquer uniquement le efect ESC de la demande .. plz .. contribuer

Questions connexes