@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

GridViewのセルにあるCheckBoxの検証コントロールは可能か

1
投稿者投稿内容
apo
常連さん
会議室デビュー日: 2008/11/10
投稿数: 27
投稿日時: 2009-04-10 13:35
ただいま、asp.net/vb.net の開発を Visual Web Developer 2008 Express Edition
でしております。

開発上の規定で
入力チェックなどは、
asp.netの持つ
検証機能を使って行わなくてはいけませんが、
CustomValidatorを使用して
GridViewのセルの中にある
チェックボックスの入力チェックを
することは可能でしょうか。。。

自分でためしでしてみましたが、エラーになりました。
そのときは、CheckBoxの IDは、全て同じにしています。

よろしくお願いします。
ぴあちゃん
ぬし
会議室デビュー日: 2008/02/07
投稿数: 287
投稿日時: 2009-04-10 17:52
<input type=checkbox id="checkbox1" name="checkbox1" value="1" />
<input type=checkbox id="checkbox1" name="checkbox1" value="2" />
<input type=checkbox id="checkbox1" name="checkbox1" value="3" />
<input type=checkbox id="checkbox1" name="checkbox1" value="4" />
<input type=checkbox id="checkbox1" name="checkbox1" value="5" />

こーゆーことですか?

id はかぶっちゃ駄目ってルールですし、name に同じ名前指定して
3つチェックONすると、
リクエストパラメータは、
checkbox1=1
checkbox1=3
checkbox1=5

てな感じで返ってきます。

GridViewのカラムにチェックボックスを表示したとき、サーバーの
バリデータに チェックBOXのチェック機能が無いのであれば、
カスタムバリデータで対応するしか無いのでしょうけど、
上記の通り、name が同じ場合、どのチェックBOXなのか分からない
ので分かるようにする工夫が必要になりますね。
name と id は表示順で昇順に一意の名前を付けた方が無難です。
ページングするのであれば、何ページ目かの情報も必要になるかと
思います。name , id が常に 1から始まるのであれば。

追記:
http://techbank.jp/Community/blogs/mymio/archive/2008/10/07/2540.aspx





[ メッセージ編集済み 編集者: ぴあちゃん 編集日時 2009-04-10 18:03 ]
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2009-04-11 06:42
引用:

自分でためしでしてみましたが、エラーになりました。


できるはずですけど!

どんなエラーになりましたか?
_________________
ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2009-04-14 22:55
引用:

apoさんの書き込み (2009-04-10 13:35) より:
CustomValidatorを使用して
GridViewのセルの中にある
チェックボックスの入力チェックを
することは可能でしょうか。。。

自分でためしでしてみましたが、エラーになりました。
そのときは、CheckBoxの IDは、全て同じにしています。


質問
1.「チェックボックスの入力」とは、どういうことか?チェックされていなければならないのか?グルーピングされたチェックボックスのうち、規定数のチェックがされていなければならないのか。
2.「エラーになりました」とは、どのようなタイミングで、どのようなエラーになったのか。コーディング、コンパイルの段階でエラーになっているのか、実行時に例外が発生するのか。実行時に例外が発生するなら、必ず発生するのか、何らかの条件が整ったときに発生するのか。
3.「CheckBox の ID は、全て同じ」とは、どういうことか。1つのセルの中にある ID が全て同じなのか。画面全体で同じなのか。そのチェックボックスは、どのように配置したのか。ID が同じなのは、サーバー上のことか、それともクライアントのことか。
4.「自分で試した」とは、どのような入力に対してどのようになることを期待して、どのように試したのか。
1

スキルアップ/キャリアアップ(JOB@IT)