• ベストアンサー

VS2005 ASP.NET 入力チェック

VS2005 ASP.NETで テキストボックスに数字を入力する際に 5ケタまで入れないとエラーメッセージが出る というような処理はどうしたらいいでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.1

どのタイミングでエラーをチェックしたいのでしょうか? テキストボックスの内容を変更直後でしたら、テキストボックス タグ内に、 OnChange="LengthCheck()" のように記述(LengthCheck()は、JavaScriptの関数)し、 JavaScriptでLengthCheck()内で、入力文字列の長さが5桁かどうか判断します。 submitボタン押下時に、エラーをチェックされるのでしたら、submitボタンのクリックイベントをVBで定義し、そこでチェックします。

aki05
質問者

補足

ご回答有難う御座います。 submitボタンをクリックした際に、エラーをチェックするというやり方がしたいです。 submitボタンのクリックイベントをVBで定義し、そこでチェックしますと回答頂きましたが なにぶん、プログラムド素人な者で もう少し詳しくお教え頂けますでしょうか? 申し訳御座いません・・。

その他の回答 (2)

  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.3

数字の5桁とわかっているのであれば、全角入力できないようにすればいいわけで、 テキストボックスのタグに、以下の記述を追加すれば、全角入力できなくなります。 (住所など、全角入力してほしい箇所では、disabledをactiveとすれば、入力モードが 自動的に全角になります。) style="ime-mode:disabled;" 数字かどうか判定する方法:(動作確認していませんので、間違っているかも。) If Double.TryParse(tx001.Text, _ System.Globalization.NumberStyles.Any, _ System.Globalization.NumberFormatInfo.InvariantInfo, _ d) Then Else lblerr.text = "xxxは、数字を入力してください。" Exit Sub End If

  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.2

VS2005のVB版として説明します。 ・submitボタン名は、btnSinsei とします。 ・チェック対象のテキストボックス名は、 tx001 とします。 ・エラーメッセージ表示用のラベル名は、 lblerr とします。 Protected Sub btnSinsei_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSinsei.Click if tx001.Text.Length <> 5 then 'ERROR処理 lblerr.text = "xxxは、5桁で入力してください。" Exit Sub End If '通常処理 End Sub Handles btnSinsei.Click の行は、1行で続けて書いてください。 質問内容には、”数字5桁”とありますが、 ・入力文字列が数字か否か ・入力文字列が半角かどうか のチェックも必要ですね。

aki05
質問者

補足

再び回答有難う御座います!! 5桁の件はバッチリできました!!有難う御座います。 ・入力文字列が数字か否か ・入力文字列が半角かどうか というのはどうやったらいいのでしょうか? 何度もすみません・・・。