2017-10-28 187 views
1

我打開fancybox點擊鏈接。提交按鈕無法使用fancybox

這個奇特盒具有用戶名和密碼,我想在提交按鈕點擊驗證。(爲了簡化我已經改變了的fancybox到一個提交按鈕只截至目前)

我寫一個PHP代碼應該顯示hello,無論是在fancybox還是在html頁面(不確定確切的位置),但它沒有被顯示。

如何在fancybox或html頁面上點擊提交按鈕來獲取hello?

我不想使用ajax調用,但如果沒有ajax調用是不可能的,在這種情況下如何使用ajax?

//p.php

<html> 
<head> 

    <style> 
    #hidden-content-b 
    { 
    /* Custom styling */ 
    max-width: 850px; 
    border-radius: 40px; 

    /* Custom transition - slide from top*/ 
    transform: translateY(-50px); 
    transition: all .33s; 
    } 

    .fancybox-slide--current #hidden-content-b 
    { 
    transform: translateY(0); 
    } 

    </style> 

    <link rel="stylesheet" type="text/css" href="fancybox-master/dist/jquery.fancybox.min.css"> 
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> 
    <script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script> 
    <script src="fancybox-master/dist/jquery.fancybox.min.js"></script> 

</head> 

<body> 

    <h2>fancyBox v3.1 - Inline content</h2> 
    <form action = "p.php" method = "post"> 
     <div class="grid"> 

      <p> 
      <a data-fancybox data-src="#hidden-content-a" 
      href="javascript:;" class="btn">Open demo</a> 
      </p> 

      <div style="display: none;" id="hidden-content-a"> 
       <center> 
       <h1><b>HTML</b></h1> 
        <input type = "submit" value = "Submit" name = "submit"> 
       </center> 
      </div> 

      <?php 
       if(isset($_POST['submit'])) 
       echo "hello"; 
      ?> 

     </div> 

    </form> 
</body> 
</html> 

回答

0

當你使用顯示一些內容fancyBox,那麼它會從它的位置移開,因此它不在你的表單內。你只需要改變要素的順序 讓您的內容中包含的形式,例如:

<div class="grid"> 

    <p> 
    <a data-fancybox data-src="#hidden-content-a" 
     href="javascript:;" class="btn">Open demo</a> 
    </p> 

    <div style="display: none;" id="hidden-content-a"> 
    <form action="p.php" method="post"> 
     <center> 
     <h1><b>HTML</b></h1> 
     <input type="submit" value="Submit" name="submit"> 
     </center> 
    </form> 
    </div> 

</div> 
+0

在這種情況下,它向我展示了html頁面上的php輸出。我應該在代碼中做出什麼改變才能在新的fancybox中獲得php的輸出。 – Krishna

+0

添加自定義提交事件處理程序 - >使用ajax發送數據 - >顯示新的fancyBox – Janis

0

重定向形式採取行動,在同一頁面,檢查(isset($ _ POST [ '提交']))在第一

+0

我重定向到相同的頁面,甚至試圖檢查isset在第一,但在點擊鏈接沒有任何反應。 – Krishna

+0

你的div是隱藏的,所以你不能看到提交按鈕 – codebreaker

+0

點擊打開演示鏈接後,div是可見的,但點擊div上的提交按鈕後沒有任何反應。 如何在fancybox或html頁面上點擊提交按鈕來獲取問候? – Krishna