asp.net - 必填字段验证器未触发

标签 asp.net

我在使用具有 TextBox 和 requiredFieldValidator 的标准 ASP.NET 页面时遇到问题。重现的步骤非常简单:

  1. 在页面上放置文本框
  2. 在页面上放置一个RequiredFieldValidator
  3. 将RequiredFieldValidator指向文本框
  4. 运行应用
  5. 按 Tab 键离开 TextBox,RequiredFieldValidator 不显示
  6. 输入文本,然后删除文本,然后按 Tab 键移开,RequiredFieldValidator 会显示

在回发后,RequiredFieldValidator 在这两种情况下都可以正常工作,但是客户端代码似乎只有在文本框中输入某些内容(然后删除)后才会触发。

有谁能在不破坏 JavaScript 的情况下找到解决方案吗?

最佳答案

这种行为是否可能是有意设计的,目的是在用户输入之前抑制验证控件的出现?

一般来说,只要单击 CausesValidation 设置为 true 的控件(例如提交按钮),就会调用 Validate()。

无论如何,一个穷人的解决办法是,您可以从 Load 事件处理程序中调用页面 Validate() 函数。这将使事情变得更清楚,以标记满意的用户,他们需要输入一些内容。例如

protected void Page_Load(object sender, EventArgs e)
{
    Validate();
}

关于asp.net - 必填字段验证器未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/261050/

相关文章:

c# - ASP.NET C# 在循环内打开多个模式弹出窗口,一个接一个

c# - 获取gridview中DataField的列表

asp.net - updatepanel 内的文本框出现问题 - 未导致 OnTextChanged 事件

javascript - 使用 ajax 和 asp.net 将文件保存到 SQL Server 数据库

asp.net - 如何使用 ASP.Net (Mvc) 正确提供 pdf 文件?

c# - 基于多级角色授权的数据库设计

asp.net - 如何使 HTML 渲染速度更快

c# - 使用 jquery 和处理程序 (ashx) 上传文件时出现“未找到”错误

c# - 'OnCheckedChanged' 时 ASP.NET 更新网页

asp.net - Asp.net Mvc 的最佳 TinyMce 编辑器图像管理器/文件上传