2009-05-28 45 views
1

いくつかのチェックボックスがあるフォームのhtmlページがあります。 VbScript ASPを使用して、1つのチェックボックスがオンになっていることを確認する必要があります。それ、どうやったら出来るの?そうでない場合は、フィールドには項目がフォームデータで送信されていない、それは価値がフォームデータで送信されますだ、チェックボックスがチェックされている場合VBScript ASP:チェックボックスのチェック

Dim terms 
terms = Request.Form("terms") 
+0

古典的なASPまたはASP.NETですか?つまり、VBScriptまたはVB.NETですか? – Tomalak

答えて

5

: はここにあるチェックボックスそのものです。チェックボックスの値を指定しない場合、デフォルト値 "on"が使用されます。

ので、チェックボックスがチェックされているかどうかを判断するために、値と比較:次に

<input type="checkbox" name="terms" value="Yes"> 

あなたがすることができます

If terms = "on" Then 
    ... 
End If 
+0

That、and(terms not = "")はうまく動作します。 – Raithlin

+0

空の文字列との比較は、チェックボックスがチェックされていないと、値が実際には空文字列ではないので、少し揺れます。その場合、値は空(割り当てられていない)です。 – Guffa

+0

これはトリックでした。ありがとう! –

1

最高の方法は、明示的にあなたのチェックボックス値を与えることですフィールドに設定した値が含まれているかどうかを確認してください:

<% 
Dim terms 
terms = Request.Form("terms") 
If terms = "Yes" Then 
    '...your code here 
End If 
%> 

チェックボックスの値がわからない場合(またはその値を制御できない場合)は、空の文字列をチェックできます。はい、論理的に言えば、フォームは、チェックされていない(または存在しない)フィールドに対して、長さゼロの文字列ではなく、特別な値 'Empty'を返します。実際には、Request.Formは空の文字列を空の文字列に変換します。

<input type="checkbox" name="terms"> 
<% 
Dim terms 
terms = Request.Form("terms") 
If terms <> "" Then 
    '...checkbox was checked 
End If 
%> 
関連する問題