2011-02-27 3 views
1

JQuery 대화 상자를 사용하고 있습니다.JQuery 대화 상자에서 ENTER 버튼 누르는 방법

아래 코드는 대화 상자를 여는 곳입니다.

$('#MyLogin').dialog({ 
       autoOpen: true, 
       width: 450, 
       modal: true, 
       draggable: false, 
       title: $('.LoginpopupHeaderText').text(), 
       close: function(event, ui) {showSelect();} 
      }); 

대화 상자가 열리면 로그인 버튼이 표시되며 여기에 click 이벤트를 사용하여 사용자 이름과 암호 필드의 유효성을 검사합니다. 아래 코드 샘플을 참조하십시오.

//Login Button Clicked 
    $('#loginButton').click(function() 
    { 
      //Code goes here 
     }); 

내 로그인 버튼은 이미지가 아닙니다. 버튼입니다. 이 행동 할 수 있도록

지금 나는 나의 로그인 대화 상자이 (가) "입력"을 끄는 후뿐만 아니라 열려있는 경우에만 버튼을 내 "loginButton는"이벤트를 클릭 호출해야 " 입력"잡기 버튼을 눌러 원하는 우리가 열린 대화 상자에서 loginbutton을 클릭 한 것처럼 말입니다.

좋습니다.

감사합니다.

최고 감사합니다,

답변

6

버튼을

$('body').keyup(function(e) { 
    if ($('#MyLogin').is(':visible') && e.which == 13) { 
     //stuff 
    } 
}); 
+0

감사합니다 @ 야드, 대화 상자의 "open : function()"을 사용하여 이미지 인 로그인 버튼에 초점을 맞출 수는 없습니까? 가능하다면 어떻게 할 수 있습니까? 그것에 집중할 수 있습니다. –

+0

@MKS, 가능할 수도 있습니다. 그러나 사용자가 텍스트 필드와 같은 곳을 클릭하면 제안 된 솔루션이 중단됩니다. – Vadim

1

이 사업부 을 myLogin 예를 들어, 당신의 "에 onLoad"이벤트에 JS 함수를 등록 볼 경우, 당신은 확인하실 수 있습니다

 <div id="MyLogin" onload="javascript:return checkKeyPress();" /> 

keyCode를 13이면 checkKeyPress 기능 검사에서는, 예를 들어 양식 제출

event.preventDefault() ; 
    if (keyCode == 13) 
      frm.submit(); 

    return false; 

의사

에서는 event.preventDefault반환 거짓 라인 그렇지 않으면 KeyPress 이벤트는 기본 폼/페이지로 전달되며, 필수입니다 기억하십시오. 희망이 도움이 될 것입니다.