0

これはどのように可能ですか?私のニーズの半分で動作するこのコードがあります。ラジオボタンをクリックするとユーザーがリダイレクトされますが、フォームは保存されないか、メールで送信されます。一度に2つのコマンドを実行させることはできますか? これがコードです

<input type="radio" id="display_al" name="display_al" value="display_al" onClick="this.form.action='book-now-2';this.form.submit;"  onMouseOver="style.cursor='hand'">

ここで何が欠けていますか?私はこれをお問い合わせフォームに使用しているので、人々はアイデアを得ることができます. 彼らが別の支払い方法を選択するたびに、私は彼らをリダイレクトしています. クレジット カードでの支払い時に、より安全なページにリダイレクトしたいと考えています。

4

1 に答える 1

0

ここに 2 つのオプションがあります: 1) フォーム送信スクリプトに、情報を保存した後に別のページにリダイレクトする必要があることを伝える非表示の情報をフォームに追加します。

最初に非表示フィールドをフォームに追加します。

<input type="hidden" name="redirect" id="redirect" />

次に、onclickを変更します

onclick="document.getElementById('redirect').value='altpayment';this.form.submit;"

フォームハンドラーを更新します

<?php
//your normal form submission code, and then...

if(isset($_POST['redirect']) && $_POST['redirect'] == "altpayment"){
    header("location: http://www.yoursite.com/book-now-2");
}else{
    //whatever you normally do after submitting the form
}

2) AJAX を使用してフォームを送信し、リダイレクトします。

JavaScript 関数を作成する

<script>
function submitForm(){
 $.ajax({
        url: 'some-url',
        type: 'post',
        dataType: 'json',
        data: $('form#myForm').serialize(),
        success: function(data) {
            window.location.replace("http://www.yoursite.com/book-now-2");
        }
    });
}
</script>

オンクリックを変更する

onclick="submitForm();"

2 番目のルートに進む場合は、必ずページに JQuery フレームワークを含め、#myFormフォームの ID に置き換えてください。

于 2013-07-09T02:56:33.593 に答える