- ベストアンサー
入力制限
いつもお世話になっております Visual C# ASP.NET(Web) ユーザーコントロール内の入力制限しようと検証コントロールを使用しましたがうまく言うか無かったです。 Visual C#部分のみで入力制限をしたいんですが何か言い方法がありませんか? 半角、英数字など
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
お世話になります。 > WebのほうでやるとerrorProvider1の定義がありませんとでてしまいできませんでした そりゃそうでしょう。 参考サイトの画像を見るとお解かりになると思いますが 例示されているのは Windows Application ですので。 [ErrorProvider クラス] http://msdn2.microsoft.com/ja-jp/library/system.windows.forms.errorprovider.aspx 見ていただきたかったのは System.Text.RegularExpressions の使い方です。 ■aspx <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>無題のページ</title> </head> <body> <form id="form1" runat="server"> <div> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label></div> </form> </body> </html> ■aspx.cs using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; public partial class _Default : System.Web.UI.Page { protected void Button1_Click(object sender, EventArgs e) { System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"^[0-9]+$"); if ( !regex.IsMatch(this.TextBox1.Text) ) { this.Label1.Text = "TextBox1 の入力値が半角数字ではありません"; } } } > ユーザーコントロール内の検証はどうするのが一般的なのでしょうか? ユーザーコントロールというか、ASP.NET だと 検証コントロールが用意されているので それを使うのが一番楽チンだとは個人的には思います。
その他の回答 (1)
- naganaga_001
- ベストアンサー率71% (172/242)
お世話になります。 サーバーサイドで正規表現チェックなどは どうでしょうか。
お礼
ありがとうございます。ぜひ参考にさせていただきます。 ついでといっちゃ何なんですがユーザーコントロール内の検証はどうするのが一般的なのでしょうか?
補足
WebのほうでやるとerrorProvider1の定義がありませんとでてしまいできませんでした