2013-04-09 3 views
0

텍스트 상자가 있습니다. 그 이름은 PhoneNumber입니다. len (입력 값) = 0 인 경우 팝업을 수행하려고합니다. 태그를 사용할 때 작동하지 않습니다. (내가 디버그 모드에서 보았다) 내가 이미 다른 Jq 스크립트에서 그것을 할 때. 그것은 작동하지만 팝업 창이 단지 몇 밀리 초 때문에 아무것도 할 수 없어. 저는 프로그래밍에 익숙하지 않고 여전히 배우고 있습니다. 당신이 나를 도우면 행복해질 것입니다. 감사.if 문과 팝업 경우

<script type="text/javascript"> 
    $('#PhoneNumber').bind('keypress', function (e) { 
     if (e.keyCode == 13) { 
      var test = $('#PhoneNumber').val().length; 
      if (test == 0) { 
       alert('At Least'); 
       /* $('a.login-window').one(function() {    
        var loginBox = $(this).attr('href'); 
        //Fade in the Popup and add close button 
        $(loginBox2).fadeIn(300); 
        //Set the center alignment padding + border 
        var popMargTop = ($(loginBox).height() + 24)/2; 
        var popMargLeft = ($(loginBox).width() + 24)/2; 
        $(loginBox).css({ 
         'margin-top': -popMargTop, 
         'margin-left': -popMargLeft 
        }); 
        // Add the mask to body 
        $('body').append('<div id="mask"></div>'); 
        $('#mask').fadeIn(300); 
        return false; 
       }); 

       // When clicking on the button close or the mask layer the popup closed 
       $('a.close, #mask').live('click', function() { 
        $('#mask , .login-popup').fadeOut(300, function() { 
         $('#mask').remove(); 
        }); 
        return false; 
       });*/  
      } 
      else 
      { 
       alert('At Least'); 
       $("#PhoneNumber").val(""); 
       $('#PhoneNumber').focus(); 
      } 
     } 
    }); 
</script> 
+0

당신은 당신이 스크립트를 호출하고 어디 있는지를 보여 가지고 있고, 다른 스크립트가 있습니다. – steo

+0

여기에서 잘 작동하는 것 같습니다. http://jsfiddle.net/SgBnU/1/ – Lowkase

+0

내 친구 고맙습니다. 나는 경고를 할 수 있지만 팝업을 할 수는 없다. 실제로 팝업이 나타나지만 갑자기 사라집니다. 불행히도 내 문제는 해결되지 않았습니다. 팝업을 사용하는 실제 코드는 다음과 같습니다 (두 번째 주석에서.). 네가 조언을 할 수 있다면 나는 행복 할 것이다. – user2263009

답변

0

항상로 jQuery 코드를 넣어 :

$(document).ready(function() { 
    //Your code 
}); 

이것은 당신이 요소에 이벤트 핸들러를 첨부 할 때 DOM이로드되었는지 확인합니다.

내게는 one 콜백 함수의 return false이 완료되기 전에 fadeIn을 죽이는 것처럼 보입니다.

당신은 함수의 매개 변수로 이벤트 객체 e를 추가 한 다음 e.stopPropagation()을 사용 e.preventDefault() 대신 같은 return false;의 수 :

$('a.login-window').one(function (e) {  
    e.stopPropagation(); 
    e.preventDefault(); 
    //Your code 
});