2013-02-01 46 views
1

我需要一些幫助。我試圖延遲提交表單5秒,因此在提交登錄表單之前會出現一個jQuery對話加載框。延遲5秒提交表單並顯示jquery對話?

目前使用的代碼IM不耽誤提交然而,從提交的數據,並不會登錄用戶停止形式。

我敢肯定它,因爲我的javascript使用e.preventDefault IM但它沒有它沒有工作,任何人都可以請我告訴我如何可以延遲表單提交併成功提交數據,因此它會記錄用戶英寸

謝謝。

<div id="login"> 
     <?php 
     if (!logged_in()) { 
      ?> 

     <form id="myform" form action="login.php" rel="shadowbox" method="post" class="loginform"> 

    Email 
     <input type="text" name="email" maxlength="30" /> 

    Password 
    <input type="password" name="password" maxlength="30" /> 

    <input type="image" src="../PTB1/assets/img/icons/loginarrow1.png" name="submit" class="loginbutton" value="Login" /> 

       </form> 


       <?php 
     } 
     if (logged_in()) { 
      ?> 


       Logged in as, <?php echo $_SESSION['email'] ?>. <a href="dashboard.php">Dashboard</a>, <a href="logout.php">Logout</a> |&nbsp;&nbsp;&nbsp;&nbsp;<a href="dashboard.php"><div class="login_settings" id="login_settings"></div></a> 
    <?php 
     } 





     ?></div> 

     <script> 
     $('#myform').submit(function (e) { 
     var form = this; 
     e.preventDefault(); 
     setTimeout(function() { 
      form.submit(); 
     }, 3000); // in milliseconds 
    }); 
    </script> 

     <script> 
     $(document).ready(function() { 
     $('#myform').submit(function() {Shadowbox.open({ 
      content: '<iframe src="login.php" width="500" height="300" scrolling="no" style="overflow:hidden; border:none;"></iframe>', 
      player:  "html", 
      height:  300, 
      width:  500 
     }); 

      }); 



     }); 



    </script> 

回答

0

使用單一提交處理程序。我在我的本地系統上試過這個,它可以工作。

<script type="text/javascript"> 
     $(document).ready(function() { 
      $('#myform').submit(function(e) { 
       var form = this; 
       e.preventDefault(); 

       Shadowbox.open({ 
        content: '<iframe src="login.php" width="500" height="300" scrolling="no" style="overflow:hidden; border:none;"></iframe>', 
        player:  "html", 
        height:  300, 
        width:  500 
       }); 

       setTimeout(function() { 
        form.submit(); 
       }, 3000); // in milliseconds 
      }); 
     }); 
    </script> 
+0

你做了什麼使它爲你工作,因爲它延遲提交和調出dilaogue窗口但不登錄用戶,你使用什麼瀏覽器等? –

+0

我正在使用Chrome。你爲什麼在shadowbox中的iframe中加載login.php? form.submit將提交表單#myform到#myform的action屬性中指定的頁面。你到底打算做什麼? –

+0

即時只使用它作爲一個例子的PHP文件在這一刻,即時將要使用的內容: