-4

お問い合わせフォームに書きましたが、その中にチェックボックスがあります。私が望むのは、ユーザーがチェックボックスをオンにすると、YES になるはずです。これは問題ありません。また、ユーザーがチェックボックスをオンにしなかった場合は、NO を取得する必要があります。これはHTMLでのみ可能ですか?そうでない場合は、Javaスクリプトで?注: チェック ボックスを 1 つだけ使用したい。以下は、理解を深めるためのコードです。

<input type="checkbox" name="Agreed to Privacy Policy:" value="Yes" />
Please tick this check box if you agree with our 
<a href="http://www.xyz.com" target="_blank"> 
Privacy Policy</a></td>

注: 現在、チェックボックスがオンになっている場合、テストメールを受信して​​います: "プライバシーポリシーに同意: はい" ユーザーがチェックボックス "プライバシーポリシーに同意: いいえ" にチェックを入れていない場合、私が望むのは. どんな助けでも大歓迎です。

4

1 に答える 1

1

チェックボックスがチェックされている場合、A<input type="checkbox">は を介し​​てのみ値を返します。<form>したがって、チェックボックスがオンになっていない場合、チェックボックスから直接応答を得ることはありません。

秘訣は、POST/GET データの一部として何らかの値が渡されたかどうかを確認することです。チェックボックスがオンになっている場合はチェックされています...チェックされていない場合はチェックされていません。

メールの送信に使用している言語のコードやヒントさえも提供しませんが、(たとえば) C# を使用している場合は、次のようなものを使用できます...

name(以下では、属性を のようなより適切なものに変更することを前提としてchkAgreeいます。そこにスペースを入れても役に立たないためです)

messageBody += "Agreed to Privacy Policy: ";
messageBody += (Request["chkAgreed"] != null ? "Yes" : "No");

アップデート

OP のコメントに続いて、上記のコードの PHP バージョンを次に示します。

<form>これは、が を使用していることを前提としていmethod="post"ます。属性を使用しているmethod="get"(またはmethod属性をまったく使用していない) 場合は、 を に変更する必要があり$_POSTます$_GET

messageBody .= "Agreed to Privacy Policy: ";
messageBody .= (isset($_POST["chkAgreed"]) ? "Yes" : "No");
于 2013-01-15T12:27:02.903 に答える