ASP.NET 简单问题
发布网友
发布时间:2022-04-27 09:01
我来回答
共6个回答
热心网友
时间:2022-04-27 10:31
private void aa()
{
try
{
model.Id = int.Parse(this.TB1.Text);
model.Name = this.TB2.Text;
model.Class = this.TB3.Text;
}
catch(FormatException ex)
{
throw new FormatException("编号只能为数字
");
}
}
你也可以写个函数去判断TEXTBOX的值。如:
public bool IsInteger(string val)
{
char[] aa = "aaa".ToCharArray;
foreach(char a in aa)
{
if ( !Char.IsNumber(a))
{
return false;
}
}
return true;
}
然后 调用 :
if(!IsInteger(TB1.Text))
{
throw new Exception("编号只能为整数!")
}
热心网友
时间:2022-04-27 11:49
好像不能直接用TextBox的值,可以这么写
string Pattern = @"\d+";//判断数字的正则表达式
Regex reg=new Regex(Pattern,RegexOptions.Compiled);
Match m=reg.Match(this.TB1.Text.ToString());
if (m.Success)
{
Response.Write("<script>alert('是数字')</script>");
}
else
{
Response.Write("<script>alert('不是数字')</script>");
}
前面需要引用using System.Text.RegularExpressions;
不知道是不是你需要的答案~~~
热心网友
时间:2022-04-27 13:23
你就是想判断TB1.Text是数字时才执行下面的代码嘛~~~
可以这样:
int i=0;
if(int.TryParse(TB1.Text,out i)==true)
{
model.Id = i;//转换成功的话,把tb1的值给i
model.Name = this.TB2.Text;
model.Class = this.TB3.Text;
}
热心网友
时间:2022-04-27 15:15
textbox后面加个属性就只能输入是数字了:
onKeypress = "if (event.keyCode < 48 || event.keyCode > 57) event.returnValue = false;"
或者可以用try catch尝试把值转为数字.如果不成功,弹出编号只能为数字
热心网友
时间:2022-04-27 17:23
这样写就行了
int i=0;
if(int.TryParse(TB1.Text,out i))//如果转化成功,就把值赋给变量i
{
model.Id = i;
model.Name = this.TB2.Text;
model.Class = this.TB3.Text;
}
热心网友
时间:2022-04-27 19:47
楼上的都是高手阿。
你用自带验证控件,设置一下只能输入数字的格式。
不就完了吗。代码都不用写!!!