出来るのだASP Q&A掲示板(過去LOG)  訪問数 52046 昨日 889 今日 776
    【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。
Topに戻る 掲示板に戻る 検索 削除 管理者

チェックボックスでチェックする個数を制限   カレンさん [2004/11/01 9:55:34] [4728]
  Re:チェックボックスでチェックする個数を制限   Lightningさん [2004/11/01 10:18:41] [4729]
    Re:チェックボックスでチェックする個数を制限   カレンさん [2004/11/01 10:42:42] [4730]
    Re:チェックボックスでチェックする個数を制限   Lightningさん [2004/11/01 10:45:23] [4731]
      Re:チェックボックスでチェックする個数を制限   カレンさん [2004/11/02 11:36:02] [4733]
      Re:チェックボックスでチェックする個数を制限   カレンさん [2004/11/02 15:36:23] [4734]
        Re:チェックボックスでチェックする個数を制限   Lightningさん [2004/11/02 16:15:11] [4735]
          Re:チェックボックスでチェックする個数を制限   カレンさん [2004/11/02 17:40:08] [4737]
            Re:チェックボックスでチェックする個数を制限   Lightningさん [2004/11/03 9:59:44] [4740]
              Re:チェックボックスでチェックする個数を制限   カレンさん [2004/11/04 10:49:40] [4741]

[4728] チェックボックスでチェックする個数を制限
投稿者:カレンさん 2004/11/01 9:55:34
こんにちは。またまたお尋ねいたします…。

チェックボックスで選択項目が3つある場合に
2つまでしか選択できないようにするにはどうしたらいいんでしょうか…。空白なら

If check = "" Then
Response.Write "○○を記入してください"
Response.End
End If

ということはわかるのですが・・。
よろしくお願いいたします。

[4729] Re:チェックボックスでチェックする個数を制限
投稿者:Lightningさん 2004/11/01 10:18:41
> こんにちは。またまたお尋ねいたします…。
>
> チェックボックスで選択項目が3つある場合に
> 2つまでしか選択できないようにするにはどうしたらいいんでしょうか…。空白なら
>
> If check = "" Then
> Response.Write "○○を記入してください"
> Response.End
> End If
>
> ということはわかるのですが・・。
> よろしくお願いいたします。
3つ目をチェックしたら警告って事かな?
ASPだとチェックした後、送信後に警告ぐらいしかできません。
サーバーサイドスクリプトとクライアントサイドスクリプトの違いを考えればあたりまえですけど・・・

で、チェックの方法ですが、単純に一個ずつ見ていき、チェックがあればカウントすれば良いんじゃないですかね?

[4730] Re:チェックボックスでチェックする個数を制限
投稿者:カレンさん 2004/11/01 10:42:42
>ASPだとチェックした後、送信後に警告ぐらいしかできません。

なるほど…そうだったんですね。
有り難うございました!!

[4731] Re:チェックボックスでチェックする個数を制限
投稿者:Lightningさん 2004/11/01 10:45:23
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<title></title>
<script type="Text/JavaScript"><!--
function aaa(checkedobject){
n=0;
if(document.F1.C0.checked)n++;
if(document.F1.C1.checked)n++;
if(document.F1.C2.checked)n++;
if(document.F1.C3.checked)n++;
if(document.F1.C4.checked)n++;
if(document.F1.C5.checked)n++;
if(n>2){
alert("チェックできるのは二つまでです");
checkedobject.checked=false;
}
}
// --></script>
</head>
<body>
<form name="F1">
<input type="checkbox" name="C0" onclick="aaa(this);">
<input type="checkbox" name="C1" onclick="aaa(this);">
<input type="checkbox" name="C2" onclick="aaa(this);">
<input type="checkbox" name="C3" onclick="aaa(this);">
<input type="checkbox" name="C4" onclick="aaa(this);">
<input type="checkbox" name="C5" onclick="aaa(this);">
</form>
</body>
</html>
ということで適当に書いたJavaScriptですがどうぞ〜

[4733] Re:チェックボックスでチェックする個数を制限
投稿者:カレンさん 2004/11/02 11:36:02
ああ!
わざわざ有り難うございます!ペコリ。

[4734] Re:チェックボックスでチェックする個数を制限
投稿者:カレンさん 2004/11/02 15:36:23
ASPの掲示板でjavascriptのこと聞いて申し訳ございません(^^;)
上記でLightningさんに教えていただいた記述を
2つか3つ程使いたいんですけど、その場合はどうしたらいいんでしょうか。。

教えていただいたもので、新しく作ってみたら、
どちらかが動作しなくなってしまいます。。

[4735] Re:チェックボックスでチェックする個数を制限
投稿者:Lightningさん 2004/11/02 16:15:11
簡単に解説〜
<script type="Text/JavaScript"><!--
function aaa(checkedobject){
#別にaaaである必要はないです。かっこいい名前に変えてください。
n=0;
#nはカウンターなので0で初期化してます
if(document.F1.C0.checked)n++;
これはdocument.Formの名前.CheckBoxの名前.checkedがTureならカウント+1しているだけです。
このFormの名前とCheckBoxの名前が実際に存在するものと対応しているように
if(document.F1.C1.checked)n++;
if(document.F1.C2.checked)n++;
if(document.F1.C3.checked)n++;
if(document.F1.C4.checked)n++;
if(document.F1.C5.checked)n++;
if(n>2){
#という事でnが2以上にカウントアップしていれば警告し、チェックを外しています。
alert("チェックできるのは二つまでです");
checkedobject.checked=false;
}
}
// --></script>
</head>
<body>
<form name="F1">
<input type="checkbox" name="C0" onclick="aaa(this);">
#もし上のFunctionでaaaの名前を変えたらここのaaaも同じのにしておいて下さい。
#ここのFormのnameとcheckboxのnameが上のところと対応する必要があります。
<input type="checkbox" name="C1" onclick="aaa(this);">
<input type="checkbox" name="C2" onclick="aaa(this);">
<input type="checkbox" name="C3" onclick="aaa(this);">
<input type="checkbox" name="C4" onclick="aaa(this);">
<input type="checkbox" name="C5" onclick="aaa(this);">
</form>

だから、かずを減らすのであれば、下のinputタグを減らしたらそれに対応したnameのついているdocument.F1.〜の一文を消せば良いです。

[4737] Re:チェックボックスでチェックする個数を制限
投稿者:カレンさん 2004/11/02 17:40:08
ああ、質問の仕方が悪かったみたいで
申し訳ございません・・・。
質問1では1個、質問2でも1個…しか選択できない。
みたいな設定も可能でしょうか??
お手数おかけしてます・・(^^;)

<table>
<tr>
<td>
<table>
<tr>
<td>質問1</td>
<td>
<input type="checkbox" name="1" value="1"> 1
<input type="checkbox" name="2" value="2"> 2
<input type="checkbox" name="3" value="3"> 3</td>
</tr>
<tr>

<td>質問2</td>
<td height="20">
<input type="checkbox" name="1" value="1"> 1
<input type="checkbox" name="2" value="2"> 2
<input type="checkbox" name="i_build3" value="その他"></td>
</tr>
</table>

[4740] Re:チェックボックスでチェックする個数を制限
投稿者:Lightningさん 2004/11/03 9:59:44
> ああ、質問の仕方が悪かったみたいで
> 申し訳ございません・・・。
> 質問1では1個、質問2でも1個…しか選択できない。
> みたいな設定も可能でしょうか??
> お手数おかけしてます・・(^^;)
できますけど、そういう場合はcheckboxではなくradioを使うのが言いと思います。
参考>http://tohoho.wakusei.ne.jp/html/input.htm

[4741] Re:チェックボックスでチェックする個数を制限
投稿者:カレンさん 2004/11/04 10:49:40
Lightningさん 有り難うこざいます。
私も最初はradioにしてたんですが、チェック項目を2個までOKというのを3つ作りたかったので、
ひとつしか選択できないのはダメだったんです。
これはjavascriptなんで、専門の方でまた質問してみようかと思います!
有り難うございました!



TreeBBS For ASP V.0.1.3
Program By YasNet