DOBON.NET DOBON.NETプログラミング掲示板過去ログ

入力チェック後、新規画面を表示したい

環境/言語:[WindowsXP、VB.NET、.NET Framework1.1]
分類:[ASP.NET]

初めてお世話になります。


作業日報入力画面を作成しています。

日付などを入力する画面A、詳細内容を入力する画面Bがあります。


画面Aのボタン(btnDtlAdd)をクリックしたときに、以下のことを行いたいです。

 ・画面Aのテキストボックスなどの入力内容のチェックを行う
 ・入力内容にエラーが無い場合、画面Bを起動する



画面起動を行う方法がわからず困っています。



入力チェックについては、VB.NETの関数を用意してあります。
画面起動については、JavascriptのFunctionが用意してあります。


現在のコードでは、btnDtlAddのClickイベントにて、
内容チェックの関数呼び出しと、btnDtlAddのAttributes設定(JavascriptのFunction呼び出し)を行っています。



画面起動は入力チェックのあとに以下のように記述しているのですが、

Me.btnDtlAdd.Attributes.Add("onclick", "return 画面起動Function()")

これではもういちどbtnDtlAddをクリックしないと画面が起動してくれません。
(当然だと思いますが・・)


このAttributesの設定をPage_Loadに移動して試したのですが、
ボタンのクリック時には、btnDtlAddのクリックイベントより先にJavascriptの画面起動Functionが動いてしまい、
入力チェックが行われないまま画面Bが起動しました。



1回のボタンクリックで入力チェックと画面起動を行うにはどのようにしたらよいでしょうか。
ご教授ください。


わかりづらくて申し訳ありません。

よろしくお願いいたします。
■No21631に返信(モモさんの記事)
> 入力チェックについては、VB.NETの関数を用意してあります。
> 画面起動については、JavascriptのFunctionが用意してあります。
>
>1回のボタンクリックで入力チェックと画面起動を行うにはどのようにしたらよ
>いでしょうか。
>ご教授ください。

入力チェックはサーバ側で動作してるよね。
画面起動はクライアント側なので、JavaScriptで入力チェック処理を
作成するとかすれば満たすわけだが。
> ■No21631に返信(モモさんの記事)
>入力チェックについては、VB.NETの関数を用意してあります。
>画面起動については、JavascriptのFunctionが用意してあります。
>
>1回のボタンクリックで入力チェックと画面起動を行うにはどのようにしたらよ
>いでしょうか。
>ご教授ください。
>

サーバー側で入力チェックがOKなら、クエリ文字列に何か渡して
そのクエリ文字列があれば、画面起動を行うようにするとか
http://www.atmarkit.co.jp/fdotnet/aspnet/aspnet16/aspnet16_04.html
やじゅさん、返信ありがとうございます。
確認が遅くなり、申し訳ありません。


■No21633に返信(やじゅさんの記事)
> 画面起動はクライアント側なので、JavaScriptで入力チェック処理を
> 作成するとかすれば満たすわけだが。


画面起動のJavascriptに入力チェックを加えてみました。

Me.btnDtlAdd.Attributes.Add("onclick", "return 画面起動Function()")
は、Page_Loadに移動しました。


入力内容にエラーが無い場合、正常に新規画面を起動できました。
ありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板