700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > CustomValidator ASP.NET验证控件

CustomValidator ASP.NET验证控件

时间:2020-06-22 01:31:50

相关推荐

CustomValidator ASP.NET验证控件

CustomValidator 验证控件

CustomValidator控件允许您用自定义的验证逻辑创建验证控件。例如,可以创建一个验证控件,该控件检查在文本框中输入的值是否为偶数。创建该控件的标准代码如下所示:

<ASP:CustomValidator id="Validator_ID" RunAt="Server"

controlToValidate="要验证的控件的ID"

onServerValidateFunction="验证函数"

errorMessage="错误信息"

Display="Static|Dymatic|None">

</ASP: CustomValidator>

该控件具有基类BaseValidator的属性,除了这些属性外还有一个该控件所特有的属性和事件,如表6-21所示。

表6-21 CustomValidator控件属性和事件

在该控件上若要创建服务器端验证函数,请为执行验证的ServerValidate事件提供处理程序。通过将ServerValidateEventArgs对象的Value属性作为参数传递到事件处理程序,可以访问来自要验证的输入控件的字符串。验证结果随后将存储在ServerValidateEventArgs对象的IsValid属性中。

如果要创建一个客户端验证函数,首先添加先前描述的服务器端验证函数。然后,将客户端验证脚本函数添加到.aspx页中。使用脚本创建函数格式如下所示:

Function ValidationFunctionName (source, arguments)

使用ClientValidationFunction属性指定与CustomValidator控件相关联的客户端验证脚本函数的名称。由于脚本函数在客户端执行,该函数必须使用目标浏览器所支持的语言。与服务器端验证类似,使用arguments参数的Value属性访问要验证的值。通过设置arguments参数的IsValid属性来返回验证结果。

下面创建一个范例,具体说明自定义验证CustomValidator控件的用法,该范例主要是验证用户输入的数字是否为偶数。该范例的具体开发步骤如下所示:

(1)新建一个网站,在页面上创建一个标示“请输入偶数:”,在该标示的后面,添加一个TextBox控件。

(2)然后再添加一个CustomValidator控件,在该控件的【属性】窗口设置其ErrorMessage值为“请输入偶数”、ControlToValidate值为TextBox1。下面为其编辑以客户端验证函数,具体代码如下所示:

<script language="javascript">

function ClientFunction(source,arguments)

{

if(arguments.Value%2==0)

{

arguments.IsValid=true;

}

else

{

arguments.IsValid=false;

}

}

</script>

(3)编写完函数之后,在ControlToValidate控件属性窗口为ClientValidationFunction属性赋值为该函数的名称,然后在页面上添加一个Label标签控件,并在属性窗口设置其Text值为空值,然后在该页面上添加一个Button按钮控件,并设置其Text值为“提交”。至此页面就成功的设计完成了,该页面主要页面代码如下所示:

请输入偶数:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

<asp:CustomValidator ID="CustomValidator1" runat="server"

ErrorMessage="请输入偶数"

onservervalidate="CustomValidator1_ServerValidate"

ControlToValidate="TextBox1"

ClientValidationFunction="ClientFunction"></asp:CustomValidator><br />

<asp:Label ID="Label1" runat="server"></asp:Label>

<asp:Button ID="Button1" runat="server" Text="Button" οnclick="Button1_Click" />

(4)接下来为该控件,处理验证处理程序,在CustomValidator的【事件】窗口,双击ServerValidate事件,进入后台代码编写窗口,在此编写如下代码:

protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)

{

int i = Convert.ToInt32(args.Value);

if (i % 2 == 0)

{

args.IsValid = true;

}

else

{

args.IsValid = false;

}

}

(5)接下来为按钮【提交】,编写单击事件处理程序,在设计视图双击该按钮,进入后台代码编写窗口,具体代码如下所示:

protected void Button1_Click(object sender, EventArgs e)

{

if (Page.IsValid)

{

this.Label1.Text = "你输入的是偶数:" + TextBox1.Text;

}

}

posted on -08-16 02:07思考命运 阅读(...) 评论(...) 编辑 收藏

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。