1

フォームに入力フィールドがあります-言ってみましょう:

<form action="/subscribe">
  <input type="emailadress" id="emailme" value="Email Address" />
  <input type="submit" value="Subscribe" class="cat_button" />
</form>

次に、次のページ (subscribe.html) に完全なフォームがあります。

私がやろうとしているのは、ユーザーにメールアドレスを入力してから購読を押​​してもらうことです。

subscribe.html に移動します

そのページにアクセスすると、メールアドレスはすでに入力されています。

編集:サーバー側のプログラミングにはアクセスできません。Javascript、HTML、および CSS のみです。

HTML5 セッション ストレージを検討していますが、うまくいきませんでした。

これは可能ですか?

4

2 に答える 2

1

これは確かに可能です。完全にクライアント側のソリューションが必要な場合、1 つの方法として、Javascript クリック リスナーを使用してクリック イベントをキャプチャし、フォーム内の 2 つの要素を選択してそれらの値を読み取り、それらの値をセッション ストアに配置することが考えられます。subscribe.html ページの Javascript で、必ずセッション ストアから値を読み取り、subscribe.html ページに適切な入力要素を入力してください。

最初の HTML ページの Javascript + jQuery

$(document).ready(function() {
("myform").click(function() {
    var useremail = ("selector_for_email").val();
    sessionStore.setitem("useremail", useremail);
    // Don't preventDefault, allow form POSTing
});
});

2 番目の html ページの Javascript + jQuery

$(document).ready(function() {
        var useremail = sessionStore.getItem("useremail");
        ("input_elem").val(useremail);
    });

クライアントとサーバーを含むソリューションを受け入れる場合は、ユーザーがフォームを送信できるようにします (POST メッセージを送信します)。サブスクライブのルート ハンドラーで、POST されたデータを読み取り、ビュー テンプレートの要素に入力値を設定します。

Python バックエンド

@app.route('/subscribe')
def subscribe():
    if request.method == 'POST':
        useremail = request['name_attr_of_email_input']
        return render_template(subscribe.html, email=useremail)
于 2012-10-11T03:29:23.847 に答える
0

php でこれを行うには、作成したフォームを送信するだけです (フォーム要素に「method="post"」を追加し、テキスト入力に「emailme」などの名前を付けた後)。 」)。

<form action="/subscribe.php" method="post">
  <input type="emailadress" name="emailme" id="emailme" value="Email Address" />
  <input type="submit" value="Subscribe" class="cat_button" />
</form>

そこから、subscribe.html を .php ファイルに変更し、subscribe.php で次のようにします。

<?php
$email_address = $_POST['emailme'];

echo '<input type="emailadress" name="emailme2" id="emailme2" value="' . $email_address . '" />';
?>

または:

<?php
$email_address = $_POST['emailme'];
?>

<input type="emailadress" name="emailme2" id="emailme2" value="<?php echo $email_address; ?>" />
于 2012-10-11T03:23:00.490 に答える