customvalidatorCustomValidator 中写至少3个字符的函数怎么写

customvalidator  时间:2021-07-06  阅读:()

CustomValidator 中写至少3个字符的函数怎么写

计算输入控件的值以确定它是否通过自定义的验证逻辑。

<asp:CustomValidator essKey="string" AssociatedControlID="string" BackColor="color name|#dddddd" BorderColor="color name|#dddddd" BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge| Inset|Outset" BorderWidth="size" ClientValidationFunction="string" ControlToValidate="string" CssClass="string" Display="None|Static|Dynamic" EnableClientScript="True|False" Enabled="True|False" EnableTheming="True|False" EnableViewState="True|False" ErrorMessage="string" Font-Bold="True|False" Font-Italic="True|False" Font-Names="string" Font-Overline="True|False" Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium| Large|X-Large|XX-Large" Font-Strikeout="True|False" Font-Underline="True|False" ForeColor="color name|#dddddd" Height="size" ID="string" OnDataBinding="DataBinding event handler" OnDisposed="Disposed event handler" OnInit="Init event handler" OnLoad="Load event handler" OnPreRender="PreRender event handler" OnServerValidate="ServerValidate event handler" OnUnload="Unload event handler" runat="server" SetFocusOnError="True|False" SkinID="string" Style="string" TabIndex="integer" Text="string" ToolTip="string" ValidateEmptyText="True|False" ValidationGroup="string" Visible="True|False" Width="size" /> 备注 CustomValidator 控件允许您用自定义的验证逻辑创建验证控件。

例如,可以创建一个验证控件,该控件检查在文本框中输入的值是否为偶数。

验证控件总是在服务器上执行验证检查。

它们还具有完整的客户端实现,该实现允许支持 DHTML 的浏览器(如 Microsoft Explorer 4.0 或更高版本)在客户端执行验证。

客户端验证通过在向服务器发送用户输入前检查用户输入来增强验证过程。

这使得在提交窗体前即可在客户端检测到错误,从而避免了服务器端验证所需要的信息的来回传递。

若要创建服务器端验证函数,请为执行验证的 ServerValidate 事件提供处理程序。

通过将 ServerValidateEventArgs 对象的 Value 属性作为参数传递到事件处理程序,可以访问来自要验证的输入控件的字符串。

验证结果随后将存储在 ServerValidateEventArgs 对象的 IsValid 属性中。

若要创建一个客户端验证函数,首先添加先前描述的服务器端验证函数。

然后,将客户端验证脚本函数添加到 .aspx 页中。

如果正在使用 Visual Basic,则该函数必须采用以下形式: Sub ValidationFunctionName (source, arguments) 如果正在使用 JScript,则该函数必须采用以下形式: Function ValidationFunctionName (source, arguments) 使用 ClientValidationFunction 属性指定与 CustomValidator 控件相关联的客户端验证脚本函数的名称。

由于脚本函数在客户端执行,该函数必须使用目标浏览器所支持的语言,如 Visual Basic 或 JScript。

与服务器端验证类似,使用 arguments 参数的 Value 属性访问要验证的值。

通过设置 arguments 参数的 IsValid 属性来返回验证结果。

警告 创建客户端验证函数时,请务必同时包括服务器端验证函数的功能。

如果创建客户端验证函数时不存在相应的服务器端函数,则恶意代码可能会绕过验证。

多个验证控件可以同单个输入控件相关联,以验证不同的判据。

例如,可将多个验证控件应用于 TextBox 控件,该控件使用户可以输入要添加到购物车中的商品数量。

可以使用 CustomValidator 控件确保指定的值小于商品目录中的数量,并使用 RequiredFieldValidator 控件确保用户向 TextBox 控件输入值。

注意 如果输入控件为空,则不调用任何验证函数且验证成功。

使用 RequiredFieldValidator 控件防止用户跳过某个输入控件。

不设置 ControlToValidate 属性也可以使用 CustomValidator 控件。

当验证多个输入控件或验证无法与验证控件一起使用的输入控件(如 CheckBox 控件)时,通常这样做。

在这种情况下,arguments 参数(该参数传递给 ServerValidate 事件的事件处理程序并传递给客户端验证函数)的 Value 属性总是包含一个空字符串 ("")。

但是,仍在适当的位置调用这些验证函数,以确定服务器和客户端上的有效性。

若要访问要验证的值,必须以编程方式引用要验证的输入控件,然后从适当的属性中检索该值。

例如,若要在服务器上验证 CheckBox 控件,请不要设置验证控件的 ControlToValidate 属性,并且为 ServerValidate 事件的处理程序使用以下代码: Visual Basic 复制代码 Sub ServerValidation (source As object, args As ServerValidateEventArgs) args.IsValid = (CheckBox1.Checked = True) End Sub C# 复制代码 void ServerValidation (object source, ServerValidateEventArgs args) { args.IsValid = (CheckBox1.Checked == true); } 有关 CustomValidator 控件的更多信息,请参见 System.Web.UI.WebControls.CustomValidator 类。

示例 下面的代码示例演示如何创建一个用于在服务器上验证在文本框中输入的值是否为偶数的 CustomValidator 控件。

验证结果随后显示在页上。

Visual Basic 复制代码 <%@ Page Language="VB" AutoEventWireup="True" %> <html> <head> <script runat="server"> Sub ValidateBtn_OnClick(sender As object, e As EventArgs) If Page.IsValid Then lblOutput.Text = "Page is valid." Else lblOutput.Text = "Page is not valid!" End If End Sub Sub ServerValidation (source As object, arguments As ServerValidateEventArgs) Dim num As Integer = Integer.Parse(arguments.Value) arguments.IsValid = ((num mod 2) = 0) End Sub </script> </head> <body> <form runat="server"> <h3>CustomValidator Example</h3> <asp:Label id=lblOutput runat="server" Text="Enter an even number:" Font-Name="Verdana" Font-Size="10pt" /><br> <p /> <asp:TextBox id="Text1" runat="server" /> <asp:CustomValidator id="CustomValidator1" ControlToValidate="Text1" OnServerValidate="ServerValidation" Display="Static" ErrorMessage="Not an even number!" ForeColor="green" Font-Name="verdana" Font-Size="10pt" runat="server"/> <p /> <asp:Button id="Button1" Text="Validate" OnClick="ValidateBtn_OnClick" runat="server"/> </form> </body> </html> C# 复制代码 <%@ Page Language="C#" AutoEventWireup="True" %> <html> <head> <script runat="server"> void ValidateBtn_OnClick(object sender, EventArgs e) { if (Page.IsValid) { lblOutput.Text = "Page is valid."; } else { lblOutput.Text = "Page is not valid!"; } } void ServerValidation (object source, ServerValidateEventArgs arguments) { int i = int.Parse(arguments.Value); arguments.IsValid = ((i%2) == 0); } </script> </head> <body> <form runat="server"> <h3>CustomValidator Example</h3> <asp:Label id=lblOutput runat="server" Text="Enter an even number:" Font-Name="Verdana" Font-Size="10pt" /><br> <p /> <asp:TextBox id="Text1" runat="server" /> <asp:CustomValidator id="CustomValidator1" ControlToValidate="Text1" OnServerValidate="ServerValidation" Display="Static" ErrorMessage="Not an even number!" ForeColor="green" Font-Name="verdana" Font-Size="10pt" runat="server"/> <p /> <asp:Button id="Button1" Text="Validate" OnClick="ValidateBtn_OnClick" runat="server"/> </form> </body> </html> 下面的代码示例仍是说明如何创建一个 CustomValidator 控件,该控件执行的验证例程与上例相同,但执行位置是在客户端上。

Visual Basic 复制代码 <%@ Page Language="VB" AutoEventWireup="True" %> <html> <head> <script runat="server"> Sub ValidateBtn_OnClick(sender As object, e As EventArgs) If Page.IsValid Then lblOutput.Text = "Page is valid." Else lblOutput.Text = "Page is not valid!" End If End Sub Sub ServerValidation (source As object, arguments As ServerValidateEventArgs) Dim num As Integer = Integer.Parse(arguments.Value) arguments.IsValid = ((num mod 2) = 0) End Sub </script> </head> <body> <form runat="server"> <h3>CustomValidator Example</h3> <asp:Label id=lblOutput runat="server" Text="Enter an even number:" Font-Name="Verdana" Font-Size="10pt" /><br> <p /> <asp:TextBox id="Text1" runat="server" /> <asp:CustomValidator id="CustomValidator1" ControlToValidate="Text1" ClientValidationFunction="ClientValidate" OnServerValidate="ServerValidation" Display="Static" ErrorMessage="Not an even number!" ForeColor="green" Font-Name="verdana" Font-Size="10pt" runat="server"/> <p /> <asp:Button id="Button1" Text="Validate" OnClick="ValidateBtn_OnClick" runat="server"/> </form> </body> </html> <script language="javascript"> <!-- function ClientValidate(source, arguments) { if ((arguments.Value % 2) == 0) arguments.IsValid=true; else arguments.IsValid=false; } // --> </script> C# 复制代码 <%@ Page Language="C#" AutoEventWireup="True" %> <html> <head> <script runat="server"> void ValidateBtn_OnClick(object sender, EventArgs e) { if (Page.IsValid) { lblOutput.Text = "Page is valid."; } else { lblOutput.Text = "Page is not valid!"; } } void ServerValidation (object source, ServerValidateEventArgs arguments) { int i = int.Parse(arguments.Value); arguments.IsValid = ((i%2) == 0); } </script> </head> <body> <form runat="server"> <h3>CustomValidator Example</h3> <asp:Label id=lblOutput runat="server" Text="Enter an even number:" Font-Name="Verdana" Font-Size="10pt" /><br> <p /> <asp:TextBox id="Text1" runat="server" /> <asp:CustomValidator id="CustomValidator1" ControlToValidate="Text1" ClientValidationFunction="ClientValidate" OnServerValidate="ServerValidation" Display="Static" ErrorMessage="Not an even number!" ForeColor="green" Font-Name="verdana" Font-Size="10pt" runat="server"/> <p /> <asp:Button id="Button1" Text="Validate" OnClick="ValidateBtn_OnClick" runat="server"/> </form> </body> </html> <script language="javascript"> <!-- function ClientValidate(source, arguments) { if ((arguments.Value % 2) == 0) arguments.IsValid=true; else arguments.IsValid=false; } // --> </script>

  • customvalidatorCustomValidator 中写至少3个字符的函数怎么写相关文档

Megalayer促销:美国圣何塞CN2线路VPS月付48元起/香港VPS月付59元起/香港E3独服月付499元起

Megalayer是新晋崛起的国外服务器商,成立于2019年,一直都处于稳定发展的状态,机房目前有美国机房,香港机房,菲律宾机房。其中圣何塞包括CN2或者国际线路,Megalayer商家提供了一些VPS特价套餐,譬如15M带宽CN2线路主机最低每月48元起,基于KVM架构,支持windows或者Linux操作系统。。Megalayer技术团队行业经验丰富,分别来自于蓝汛、IBM等知名企业。Mega...

新网,域名7月盛夏1核心2G内存.COM域名仅19.9元/首年,主机9.9元/月,企业邮箱0元体验

新网好不好?新网域名便宜吗?新网怎么样?新网是国内老牌知名域名注册商,企业正规化运营,资质齐全,与阿里云万网和腾讯云DNSPOD同为国内服务商巨头。近日新网发布了最新的七月放价季优惠活动,主要针对域名、云主机、企业邮箱、SSL证书等多款云产品推送了超值的优惠,其中.com顶级域名仅19.9元/首年,.cn域名仅16元/首年,云主机1核心2G内存3Mbps带宽仅9.9元/月,企业邮箱更是免费送1年,...

VPSDime7美元/月,美国达拉斯Windows VPS,2核4G/50GB SSD/2TB流量/Hyper-V虚拟化

VPSDime是2013年成立的国外VPS主机商,以大内存闻名业界,主营基于OpenVZ和KVM虚拟化的Linux套餐,大内存、10Gbps大带宽、大硬盘,有美国西雅图、达拉斯、新泽西、英国、荷兰机房可选。在上个月搞了一款达拉斯Linux系统VPS促销,详情查看:VPSDime夏季促销:美国达拉斯VPS/2G内存/2核/20gSSD/1T流量/$20/年,此次推出一款Windows VPS,依然是...

customvalidator为你推荐
settimerMFC 中,全局SetTimer函数怎么用?知识库管理系统急求一款电子文档管理系统,有好用的推荐下~?foxmail邮箱注册如何注册FOXMAIL邮箱的帐号啊?slideshare幻灯片的占位符的作用是?inode智能客户端iNode 智能客户端windows7上网方法丁奇赛尔号丁奇技能表,带等级,刷什么学习力好?数秦科技数秦科技旗下有哪些区块链项目?民生电商民生电商招的仓库操作工是干什么的ruby语言Ruby是 什么意思数据分析报告范文数据分析报告怎么写
虚拟主机排名 域名备案批量查询 中文域名交易中心 已经备案域名 贝锐花生壳域名 google镜像 星星海 namecheap linode 表格样式 ssh帐号 windows2003iso 好看qq空间 股票老左 服务器干什么用的 网游服务器 银盘服务 空间租赁 php服务器 什么是dns 更多