- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个注册页面,其中包含几个必填字段(电子邮件、用户名、密码等)的文本框。
有没有一种方法可以验证所有这些都不为空,并且如果其中任何一个未填写则只显示一条错误消息?我知道我可能必须为所有这些表单设置一个 RequiredFieldValidator,但如果它们都有错误消息,那么错误消息不会显示在每个失败的验证中,而不仅仅是通用的“请填写所有必填字段"消息。
我认为 validationgroup 可以解决这个问题,但是除了 RequiredFieldValidator 之外,这些文本框还会有其他验证,我认为这会有问题,因为我认为您不能将一个文本框分配给 1 个以上的 validationGroup?是否有执行此操作的最佳实践方法?
谢谢
最佳答案
您可以使用 ASP.NET Custom Validator控制。您可以对其进行调整,以便为任何 数量的控件设置自定义验证逻辑,我相信这正是您所需要的。它还具有验证客户端(通过使用 javascript)和/或服务器上的输入的功能。
我将向您展示一个使用服务器端验证的示例,如果您需要它在客户端上工作,请查看 ClientValidationFunction
ASPX:
First Name:<br />
<asp:TextBox ID="txtFirstName" runat="server"></asp:TextBox><br />
Last Name:<br />
<asp:TextBox ID="txtLastName" runat="server"></asp:TextBox><br />
Email Address:<br />
<asp:TextBox ID="txtEmailAddress" runat="server"></asp:TextBox><br />
<asp:Button ID="btnSignUp" runat="server" Text="Sign Up" OnClick="SignUp" />
<asp:CustomValidator ID="signUpValidator" runat="server" ErrorMessage="Please fill in all the fields first"
ForeColor="Red" OnServerValidate="ValidateSignUp"></asp:CustomValidator>
代码隐藏:
protected void ValidateSignUp(object source, ServerValidateEventArgs args)
{
bool hasFirstName = txtFirstName.Text.Length > 0 ? true : false;
bool hasLastName = txtLastName.Text.Length > 0 ? true : false;
bool hasEmail = txtEmailAddress.Text.Length > 0 ? true : false;
if (hasFirstName && hasLastName && hasEmail)
args.IsValid = true;
else
args.IsValid = false;
}
protected void SignUp(object sender, EventArgs e)
{
if (Page.IsValid)
{
//All the required fields have been filled in, sign the user up
}
}
关于c# - ValidationGroup 并有效地验证多个文本框 asp c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14026897/
我有一个带有 2 个用户控件 (.ascx) 的 ASP.NET 2.0 网页。每个 UserControl 都包含一堆验证器。将 ValidationSummary 放置在页面上将显示两个 User
我想根据 Func 的结果制作面板 Visibility true 或 false。 我有一个包含控件的页面,代码如下: Validation G
是否有我可以调用的方法来检索特定 ValidationGroup 是否有效的 bool 值? 我不想实际显示验证消息或摘要 - 我只是想知道它是否有效。 就像是: Page.IsValid("MyVa
我有一个注册页面,其中包含几个必填字段(电子邮件、用户名、密码等)的文本框。 有没有一种方法可以验证所有这些都不为空,并且如果其中任何一个未填写则只显示一条错误消息?我知道我可能必须为所有这些表单设置
这是我正在使用的代码: 还有我的 ASP 按钮: 我的问题是 OnClientClick 似乎在 Val
我正在寻找一种在页面加载时触发 ASP.NET 验证器控件的方法。 我的页面上有一个ValidationSummary 和一系列RequiredFieldValidators 和CheckBoxLis
我的用户控件中有一个 ASP.NET TextBox ID="txtDate"。它设置了 ValidationGroup="MyUC"。现在我的 UC 在 Repeater Control 中。所以会
我正在尝试从我页面上的属性动态设置我的必填字段验证器 ValidationGroup,但它们没有触发。如果我手动设置字符串,它就会触发。我的假设是它没有将属性正确地拉入 ValidationGroup
我在 ASP.NET 页面中有几个部分,需要单独验证它们。 每个部分都有自己的验证摘要部分,所以我想到了使用 ValidationSummary带有 ValidationGroup 属性的标记,但它不
这是我的标记: Name: Description: 当我删除 ValidationGroup 属性时,行为符合预期,客户端代码警告该字段是必需的。 但是,当我指定 ValidationGr
我编写了一个 Sharepoint 2007 web 部件,它需要在用户表单和管理表单 (EditorPart) 中进行验证。 我正在使用 InputFormRegularEdpressionVali
来自 asp.net 背景,在向页面添加验证时,我非常欣赏“validationGroup”的概念。我一直在 mvc.net 中寻找相应的概念,但运气不佳。 这个概念在 mvc.net 中可用吗?如果
我有一个带有表单项的用户控件,该控件在整个大型 Web 应用程序中大量重复使用,到目前为止,无效表单提交的验证摘要由使用该用户控件的 .aspx 处理。 现在我需要在运行时为每个表单项控件(文本框、列
我正在创建一个自定义服务器控件来为我的 Web 窗体应用程序生成带有特定标记和 JavaScript 处理程序的按钮元素。当然,它们能够导致回发,因此我希望它们能够与任何用于表单验证的 ASP 验证控
我们正在尝试让 JQuery 验证插件在我们的网站上运行,但我们在这里偶然发现了一个问题。 在我们的网站上,我们在每个页面上都为用户提供了一个登录表单,我们希望在其中使用插件来验证用户是否已输入用户名
我知道如何在客户端使用启用/禁用单个验证器控件 ValidatorEnable(validator, false); 但是如何启用/禁用 ValidationGroup 中的所有验证器? ? 最佳答案
我是一名优秀的程序员,十分优秀!