需要验证文本框的值

本文关键字:文本 验证 | 更新日期: 2023-09-27 18:02:47

我有一个文本框,需要在点击我的"添加"按钮验证。

当其他两个检查不在代码中时,第一个检查工作正常。

如果我在文本框中输入一个值,底部的两个检查就可以了。然而,当我进行了三次检查时,如果没有值,程序就会抛出一个错误,说

"输入字符串格式不正确"。

if (txtAge.Text == "")
{
    message += "<br>Please fill in your Age.</br>";
}
if (Convert.ToInt32(txtAge.Text) > 120)
{
    message += "<br>Age cannot be greater than 120</br>";
}
if (Convert.ToInt32(txtAge.Text) < 6)
{
    message += "<br>Age cannot be less than 6</br>";
}

需要验证文本框的值

如果您确定输入字符串为空或有效数字,则可以使用:

        if (txtAge.Text == "")
        {
            message += "<br>Please fill in your Age.</br>";
        }
        else{
            if (Convert.ToInt32(txtAge.Text) > 120)
            {
                message += "<br>Age cannot be greater than 120</br>";
            }
            if (Convert.ToInt32(txtAge.Text) < 6)
            {
                message += "<br>Age cannot be less than 6</br>";
            }
        }

否则也应该使用int。

不能将空字符串转换为Int32。您应该使用int.TryParse(因此您甚至不需要解析该值两次):

int age;
if (!int.TryParse(txtAge.Text, out age))
    message += "<br>Age is not a number!</br>";
else if (age > 120)
{
    message += "<br>Age cannot be greater than 120</br>";
}
else if (age < 6)
{
    message += "<br>Age cannot be less than 6</br>";
}

并使用else if,因为如果它根本不是一个数字,那么检查它是否在特定范围内是没有意义的。