0

だから私がやろうとしているのはこれです:

  1. ユーザーがラジオのhtmlフォームボタンをクリックします。
  2. ユーザーは送信ボタンをクリックして選択を確認します。
  3. SimpleModalがポップアップし、選択したボタンの値を表示します。
  4. ユーザーがSimpleModalで[同意する]をクリックすると、それに応じて親ページが更新されます。

手順4についてはそれほど心配していませんが、投稿情報をSimpleModalに転送する方法がわかりません。

参考までに、EricMartinが提供したSimpleModalContactFormデモを使用しています。

私はAjaxとjQueryを初めて使用します。

私はこの投稿を見ました:PHPからSimpleModalお問い合わせフォームに値を渡す

同様の問題がありましたが、インデックスページから投稿情報を取得していません。

この投稿情報を取得して、SimpleModalウィンドウ用に呼び出されるcontact.phpに渡す方法はありますか?

どんな助けでも大歓迎です。

私のインデックス(ラジオボタンが生成される場所):

<div id='contact-form'>
<form action="index.php" method="get">
                    <?
                    echo "<h3>Degrees (double click a degree to add a generator):</h3><br />";

                    for($deg = $_SESSION['degmin']; $deg <= $_SESSION['degmax']; $deg++)
                    {
                        ?>
                        <table>
                        <tr>
                        <th>
                        <?
                        echo $deg;
                        for($gen = 0; $gen < $_SESSION['degree_gens'][$deg]; $gen++)
                        {
                            echo "<input type='radio' name='test' value='deg' />";
                        }
                        ?>
                        </th>
                        </tr>
                        </table>
                        <?
                        echo "<br /><br />";
                    }
                    ?>
                    <input type='submit' name='contact' value='Demo' class='contact demo'/>
                    </form>
                    </div>

私のcontact.js(これはユーザーが[デモ]をクリックするとインデックスから呼び出されます):

$.get("data/contact.php", { r: $("input[name='test']:checked").val()}, function(data){
                // create a modal dialog with the data
                $(data).modal({
                    closeHTML: "<a href='#' title='Close' class='modal-close'>x</a>",
                    position: ["15%",],
                    overlayId: 'contact-overlay',
                    containerId: 'contact-container',
                    onOpen: contact.open,
                    onShow: contact.show,
                    onClose: contact.close
                });
            });

私のcontact.php(モーダルはこのページを表示し、投稿情報を出力しようとしています):

<h1 class='contact-title'>Edit Generator(" . $_POST['test'] . "):</h1>

-チャド

4

2 に答える 2

0
$('form').submit(function(e){
  e.preventDefault();
  var ourVal = $('input:radio').val();

  $.modal('<div id="ourModal"><div id="modalText"></div></div>');
  $('#modalText').text(ourVal);
});
于 2012-07-08T23:23:11.107 に答える
0

私が理解しているように、外部のphpファイルからモーダルをロードしたいので、変数をGETまたはPOSTパラメーターで渡す必要があります。これを行う方法の例を次に示します。

cantact.js

$.get("data/contact.php", { test: $("input[name='test']:checked").val()}, function(data){
    // create a modal dialog with the data
    $(data).modal({
        closeHTML: "<a href='#' title='Close' class='modal-close'>x</a>",
        position: ["15%",],
        overlayId: 'contact-overlay',
        containerId: 'contact-container',
        onOpen: contact.open,
        onShow: contact.show,
        onClose: contact.close
    });
});

contact.php

<h1 class='contact-title'>Edit Generator(" . $_GET['test'] . "):</h1>

POSTGETはさまざまなタイプのHTTPリクエストメソッドです。

jQuery

  1. $ .get()を使用すると$_GET、PHPでパラメーターを取得できます。
  2. $ .post()を使用すると$_POST、PHPでパラメーターを取得できます。
于 2012-07-09T00:10:29.023 に答える