2012-10-02 2 views
0

내 응용 프로그램에는 "RichFacesPleaseWaitBox"구현이 있지만 문제가 있습니다.RichFacesPleaseWaitBox에서 키 "esc"를 차단하는 방법은 무엇입니까?

사용자가 작업을 시작하면 상태가 시작되고 모달 "대기 중"이 표시됩니다. 작업이 실행을 완료하면 상태가 끝나 모달 "대기 중"이 숨겨집니다. 여기까지 괜찮습니다.

그러나 사용자가 동작을 시작하면 등장한 모달 "대기 중" "ESC"를 누르면 사라지고 사용자가 작업을 다시 클릭하여 새 제출을 허용합니다.

이 문제의 해결 방법을 얻으려면 어떻게 "ESC"를 차단할 수 있습니까?

내 modalPanel에서 시도했지만 작동하지 않습니다. 지금은

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

아니 해결책을 찾는다. richface에 게시 된 https://community.jboss.org/message/763062#763062 결과가 없습니다 –

+0

이 모달을 사용해 본 적이 없지만 jquery 모달을 기반으로하는 경우 여기에서 설명한 것처럼 페이지로드시 esc를 사용하지 않도록 설정할 수 있습니다. http://kylefox.ca/jquery-modal/examples/index.html (예제 5) – nigi

답변

2

에 기여하는 경우

:

가져 오기 mousetrap.js 파일을 마지막으로 jquery documentation 따르고, 당신은 숨기기 이벤트에 다음을 수행 할 수 있습니다,

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

당신은 또한 모달의 숨기기 이벤트에서 이벤트 바인딩을 해제 할 수 있습니다, 그래서 (당신이 이벤트를 보여 모달에 물론)이 같은 코드를 할 :

Mousetrap.unbind('esc'); 

희망이 있습니다.

+0

잘 작동합니다. 타이 –

0

음 :
는 onKeyDown에 사용하고 내 응용 프로그램의 모든 ESC를 차단합니다. JS 첫 번째로드에
:

document.onkeydown 

간단한 :

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

하지만, 내가 말하고 싶은 경우에 내가 할수 없어 .. 일부 기능에서, 또는 창에 "Hello, u는 Esc 키를 누르십시오" .. 은 하드 코어 솔루션입니다. 사람이 .. 더 나은 솔루션 만 요청에 대한 ESC의 efect에도 차단 .. PLZ이 나는 정확한 요점 가지고있는 경우

관련 문제