2017-10-28 9 views
1

リンクのクリック時にファンシーボックスを開きます。送信ボタンがファンシーボックスで動作しない

この化粧箱は、私は、ボタンのクリックを提出する上で認証するユーザー名とパスワードを持っている。(単純化するために、私は今だけのようsubmitボタンにfancyboxを変更した)私はPHPのコードを書かれている

ましたfancyboxかhtmlページ(どこにいるか分かりませんが)に表示されているはずですが、表示されていません。

fancyboxまたはhtmlページのいずれかの送信ボタンをクリックすると、こんにちはを取得するには?

私は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

で(ISSET($ _ POSTを[ '提出']))かどうかを確認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の出力が表示されています。新しいファンシーボックスでphpの出力を得るために、コードにどのような変更を加える必要がありますか? – Krishna

+0

カスタム送信イベントハンドラを追加 - > ajaxを使用してデータを送信 - >新しいfancyBoxを表示 – Janis

0

同じページへのリダイレクトのフォームアクション、あなたが使用して一部のコンテンツを表示するときに最初

+0

も最初にチェックISSETを試みたが、ボタンを何も起こりませんクリックしてください。 – Krishna

+0

divが非表示になっているので、送信ボタンが表示されません – codebreaker

+0

開いているデモリンクをクリックするとdivが表示されますが、divの送信ボタンをクリックしても何も起こりません。 fancyboxまたはhtmlページのいずれかの送信ボタンのクリックでこんにちはを取得するには? – Krishna

関連する問題