2013-04-09 28 views
0

我有一個文本框。它的名字是PhoneNumber。如果len(輸入值)= 0,我想做一個彈出窗口。 當我做一個標籤它不起作用。 (我看着調試模式) 當我在另一個已經工作的Jq腳本中做它。它可以工作,但彈出窗口停留屏幕只有幾百萬秒,所以我什麼都做不了。 我是編程新手,我仍在學習。如果你幫我,我會很高興。謝謝。如果聲明和彈出案例

<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 2013-04-09 18:21:27

+0

似乎在這裏工作很好:http://jsfiddle.net/SgBnU/1/ – Lowkase 2013-04-09 18:23:18

+0

謝謝你,我的朋友。我可以做警報,但我不能做彈出。其實彈出出現,但突然消失。不幸的是我的問題還沒有解決。我彈出的真實代碼在下面(在我的第二個評論中)。如果你能指教我,我會很高興。 – user2263009 2013-04-13 15:55:39

回答

0

始終把jQuery代碼爲:

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

這可以確保當你把事件處理程序元素DOM被加載。

對我來說,看起來你的one回調函數的return false在完成之前正在查看fadeIn。

您可以添加事件對象e作爲函數的參數,然後使用e.stopPropagation()return false;e.preventDefault(),而不是這樣的:

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