【问题标题】:Custom Validation in asp.net for string valueasp.net中的自定义验证字符串值
【发布时间】:2013-07-24 09:59:47
【问题描述】:

我有一个文本框和一个提交按钮。我想将自定义验证应用于字符串值的文本框。我怎样才能做到这一点?有人请帮帮我

【问题讨论】:

  • 用两种语言标记,因为它没有被指定。

标签: c# asp.net .net vb.net


【解决方案1】:

好吧,假设您使用的是 Web 表单,您可以这样做:

<asp:CustomValidator id="myCustomValidator"
     ControlToValidate="YourControlID"
     Display="Static"
     ErrorMessage="Your error message!"
     OnServerValidate="ServerValidation"
     runat="server"/>

然后,在代码隐藏中添加:

void ServerValidation(object source, ServerValidateEventArgs args) { ... }

或者,在 VB.NET 中:

Sub ServerValidation(source As Object, args As ServerValidateEventArgs)

args.IsValid相应地设置为truefalse

现在,您还需要做一件事:

  1. Click 处理程序中为submit 按钮调用Validate(),或者;
  2. 将您要验证的控件的ValidationGroup 属性设置为submit 按钮相同。

【讨论】:

  • 用户名 这是我的 aspx 代码。在 aspx.cs 页面中,我编写了 protected void Custom_ServerValidate(object source, ServerValidateEventArgs args) { } 。我不知道应该在花括号内写什么
  • @arshed ...嗯...好吧。那么首先,为什么这个问题没有包含在问题中?你已经走在正确的道路上。但第二,你想用那条评论说什么?
  • RegularExpressionValidator 就足够了(关于您的错误消息)。
  • @arshed,我也不知道你应该写什么。但是做你的验证,如果失败,设置args.IsValid = false;
  • @arshed,这到底是什么意思?当你发表评论时,你不是在解释自己。考虑一下我的立场——我对你的申请、你的需求,甚至你已经知道的信息一无所知。在这里帮帮我。
【解决方案2】:

您可以为此使用RegularExpressionValidator

<asp:RegularExpressionValidator runat="server" 
    ValidationExpression="^[a-zA-Z]$" ControlToValidate="idOfYourTextBox"
    ErrorMessage="Only letters are allowed, no digits!" />

ValidationExpression 替换为您的快乐表达。在这种情况下,它将输入限制为字母。

【讨论】:

  • 我需要使用自定义验证。怎么做?请帮忙
  • 你如何验证?也许使用正则表达式更容易。
猜你喜欢
  • 2021-07-03
  • 2021-08-30
  • 1970-01-01
  • 2020-07-30
  • 2017-06-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多