- PR -

入力チェックについて

投稿者投稿内容
やっち
会議室デビュー日: 2003/05/14
投稿数: 15
投稿日時: 2003-05-29 15:45
いつもお世話になっております。

画面上に複数の入力項目、ボタンがある場合、
あるボタンを押した場合は特定の入力項目をチェックし、
別のボタンを押した場合は全ての入力項目をチェックするといった
ボタン押下により入力チェックする項目を制限することができるのでしょうか?

また、画面を表示する際、入力項目等の全ての表示内容がブラウザ上表示
されているのに、なぜかブラウザが動いている感じがします。
表示の際も入力チェックしているように感じるのですが、もしそうであれば
表示の際は入力チェックをしないといった条件を付けることができるのでしょうか?

よろしくお願いいたします。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-05-29 17:04
こんにちは。
引用:

やっちさんの書き込み (2003-05-29 15:45) より:

画面上に複数の入力項目、ボタンがある場合、
あるボタンを押した場合は特定の入力項目をチェックし、
別のボタンを押した場合は全ての入力項目をチェックするといった
ボタン押下により入力チェックする項目を制限することができるのでしょうか?


 ボタンごとにチェックする項目をコレクションに登録しておき、押されたボタンによってコレクション内のコントロールをチェックする...というのはどうでしょう?
やっち
会議室デビュー日: 2003/05/14
投稿数: 15
投稿日時: 2003-05-30 09:31
Jittaさんありがとうございます。

>ボタンごとにチェックする項目をコレクションに登録しておき、押されたボタンによっ
>てコレクション内のコントロールをチェックする...というのはどうでしょう?

いろいろ調べてみてはいるのですが、「チェックする項目をコレクションに登録」が
よく解らなくはまっています。関連記事等のサイトで構いませんのでお願いします。
ちなみにチェックはクライアント側ですが大丈夫でしょうか?
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-05-30 12:08
引用:

やっちさんの書き込み (2003-05-30 09:31) より:

いろいろ調べてみてはいるのですが、「チェックする項目をコレクションに登録」が
よく解らなくはまっています。関連記事等のサイトで構いませんのでお願いします。
ちなみにチェックはクライアント側ですが大丈夫でしょうか?


 Collectionクラスを使えば…と思っていたのですが、型指定されていて面倒そうなので(ぉぃ)、ArrayListを使ってみましょう。以下、思いつきで書いているので、検証してください。

private validateControls as arraylist

sub page_load()
(中略)
validateControls = new arraylist()
validateControls.add(コントロール) … を、必要な数だけ繰り返す
(中略)
end sub

sub ボタンを押されたイベント()
dim i as integer
for i = 0 to validateControls.count -1
if validateControls.items(i).gettype() = gettype(コントロールのタイプ) then
そのコントロールによる検証
else if 以下、繰り返し
end if
next
end sub


イベントをトリガにするので、サーバサイドです。
やっち
会議室デビュー日: 2003/05/14
投稿数: 15
投稿日時: 2003-05-30 12:38
Jittaさんご丁寧にありがとうございます。

クライアントチェック後にサーバ送信したいので
クライアント側での方法はないでしょうか?
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-05-30 18:20
>>クライアントチェック後にサーバ送信したいので
>>クライアント側での方法はないでしょうか?

 ASP.NETのvbファイルやcsファイルは、「コードビハインド」で、サーバサイドで行います。コードがサーバ側に保持され、クライアント側からは背面behindにあって見えない、ということです。

 クライアントで処理するなら、クライアントサイドスクリプト、つまりJavaScriptかVBScriptをaspxファイルに埋め込めばいいです。先に示したものがJavaScriptでできるかどうかは、私にはわかりません。
 単純には、それぞれのボタンを別々のファンクションに割り当て、その中で1つ1つチェックすればいけると思います。
やっち
会議室デビュー日: 2003/05/14
投稿数: 15
投稿日時: 2003-05-30 18:30
> クライアントで処理するなら、クライアントサイドスクリプト、つまりJavaScriptか
> VBScriptをaspxファイルに埋め込めばいいです。

やはりそれしか手段はないようですね。
それで回避している最中でした。

Jittaさんありがとうございました。
やっち
会議室デビュー日: 2003/05/14
投稿数: 15
投稿日時: 2003-05-31 12:33
こんにちわ。
何度も申し訳ありません。復活させてしまいました。

クライアントにてVBScriptにて簡単な入力チェックを行おうとしたのですが、
2点ほどわかりません。

1.ボタンはHTMLのINPUT Buttonを使用し、サーバコントロールとして使用
 しているのですが、1回目はScriptを実行しますが、2回目以降Scriptが
 実行されなくなってしまった。

2.Scriptでエラーを検出した場合、サーバ送信を行わないようにしたいの
 ですが送信されてしまう。

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