C# ASP.NET:在文本框中输入非数字值时是否生成错误消息?
如果用户在文本框中输入非数字值并按下按钮,我希望在标签上显示错误消息C# ASP.NET:在文本框中输入非数字值时是否生成错误消息?,c#,asp.net,string,webforms,textbox,C#,Asp.net,String,Webforms,Textbox,如果用户在文本框中输入非数字值并按下按钮,我希望在标签上显示错误消息 如何实现这一点?如果您使用的是ASP.NET webforms,可能您有如下标记: <asp:TextBox runat="server" ID="TextBox1" Text="Default Text!" /> <asp:Button ID="Button1" runat="server" Text="Click Me" OnClick="ChangeIt" /> <br /> <
如何实现这一点?如果您使用的是ASP.NET webforms,可能您有如下标记:
<asp:TextBox runat="server" ID="TextBox1" Text="Default Text!" />
<asp:Button ID="Button1" runat="server" Text="Click Me" OnClick="ChangeIt" />
<br />
<br />
<asp:Label ID="Label1" runat="server" Text="default!" />
如果您正在使用ASP.NET webforms,可能会有如下标记:
<asp:TextBox runat="server" ID="TextBox1" Text="Default Text!" />
<asp:Button ID="Button1" runat="server" Text="Click Me" OnClick="ChangeIt" />
<br />
<br />
<asp:Label ID="Label1" runat="server" Text="default!" />
你是说你只允许数字吗
<asp:TextBox runat="server" ID="TextBox1" />
<asp:RegularExpressionValidator runat="server" ID="RegularExpressionValidator1" ControlToValidate="TextBox1" ErrorMessage="Digits only, please" ValidationExpression="^\d+$" />
如果这将只允许数字,但也将允许您完全跳过该框。如果要使其成为必需,请添加以下内容:
<asp:RequiredFieldValidator runat="server" ID="RequiredFieldValidator1" ControlToValidate="TextBox1" ErrorMessage="Required" />
更新:如果您想接受除“3”之外的“3.5”等十进制值,请将我上面提供的RegularExpressionValidator中的ValidationExpression修改为“^\d+(\.\d+)?$”您是说只允许数字吗
<asp:TextBox runat="server" ID="TextBox1" />
<asp:RegularExpressionValidator runat="server" ID="RegularExpressionValidator1" ControlToValidate="TextBox1" ErrorMessage="Digits only, please" ValidationExpression="^\d+$" />
如果这将只允许数字,但也将允许您完全跳过该框。如果要使其成为必需,请添加以下内容:
<asp:RequiredFieldValidator runat="server" ID="RequiredFieldValidator1" ControlToValidate="TextBox1" ErrorMessage="Required" />
更新:如果您只想接受“3”之外的“3.5”等十进制值,请修改我在上面提供的RegularExpressionValidator中的ValidationExpression,将其改为“^\d+(\.\d+?$”假设您想检查输入是数字还是字符串(如果输入是字符串,则显示错误),您可以使用int.TryParse函数执行以下操作:
protected void Button1_Click(object sender, EventArgs e)
{
int readValue;
if (!int.TryParse(TextBox1.Text, out readValue))
Label1.Text = "Error";
}
假设要检查输入是数字还是字符串(如果输入是字符串,则显示错误),可以使用int.TryParse函数执行以下操作:
protected void Button1_Click(object sender, EventArgs e)
{
int readValue;
if (!int.TryParse(TextBox1.Text, out readValue))
Label1.Text = "Error";
}
我不明白这个问题。您是否询问在单击按钮时如何更改winform中标签的文本?@ilkdrl:这是针对ASP.NET WebForms、Windows Forms、WPF等的?WinForms、WPF还是ASP.NET?他们都有一个文本框。很抱歉。它的网络表单根据他发布的另一个问题,他可能试图接受数字来计算重量。通过“字符串”,他可能指的是非数字文本。新程序员有时就是不懂术语,我不明白这个问题。您是否询问在单击按钮时如何更改winform中标签的文本?@ilkdrl:这是针对ASP.NET WebForms、Windows Forms、WPF等的?WinForms、WPF还是ASP.NET?他们都有一个文本框。很抱歉。它的网络表单根据他发布的另一个问题,他可能试图接受数字来计算重量。通过“字符串”,他可能指的是非数字文本。新的程序员有时就是不知道术语。