|
Mr.Tです、こんにちは。
■No18470 (せつな さん) に返信 > asp.net(vb)での質問なのですが、どうもうまくいかないのでアドバイスをお願いします。 > > 「テキストボックスに文字列を挿入して、ボタンをクリックするとテキストボックスのデータをチェックしてメッセージボックスを表示する」というプログラムをつくりたいのですが・・ > > テキストボックスのエラーチェックはCustomvalidatorでチェックして、ValidationSummaryにエラー文として表示。 > エラーがなかったらreturn confirm('確認:これでいいですか?');とメッセージボックスを表示。 > ・・とここまで考えたのですが、こうしてしまうと、メッセージボックスが表示されてからエラー文が出てきてしまいます。 > > どうしたらいいでしょうか? とりあえず、もちょっと説明をがんばって。
1)エラーがなかった場合について、return confirmとクライアントスクリプトで返答を求めている 2)Validの処理は、クライアント、サーバの両方で行うことができる。
で、ValidationSummaryにエラーを表示させる部分は、サーバ側で処理しているため、順番としては 次のようになっているはず。
1:ページ表示 2:文字入力 3:クリック! 4:クライアントスクリプトが動いて「コレでいいか?」と聞いてくる 5:データが送られてきたため、ようやくサーバ側でValid処理が動いてメッセージがクライアントに 送りつけられる。
ということだと思う。 クライアント側での処理と、サーバ側での処理の切り分けがまずできてないようだけど、 そこをきちんと順番をつけて追ってくださいね。 ステップ実行すればいっぱつでわかることですから。
で、4,5を入れ替えたら、それでいいんじゃね、とか思うけど、 4がクライアント側の処理だから5でエラーが出なかったら、4で実行したいスクリプトを はじめてそこで埋め込むとか、そういう形にしたらいいんじゃないかな。
|