问题标签 [validation-controls]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1942 浏览

asp.net - ASP.NET 中的可选验证

我有一个包含三个单选按钮的页面,具体取决于选择了哪个按钮,我需要验证一些控件(使用必填字段验证器)。除了使用自定义验证器之外,还有什么方法可以做到这一点?

谢谢

0 投票
1 回答
3037 浏览

asp.net - 动态验证控件在更新面板中不起作用

我正在动态创建验证控件并将它们添加到更新面板。但是,客户端验证永远不会触发。

这是.aspx文件:

这是后面的代码:

这是创建验证控件的类:

当您点击下一步时,客户端验证永远不会触发。真正奇怪的是,当您将按钮包装在另一个更新面板中时,验证会触发(在 IE 和 Firefox 中,但不在 Chrome 或 Safari 中)。

有人知道发生了什么吗?我知道 Asp.net AJAX 的第一个版本不支持验证控件,但一切都是最新的。

0 投票
1 回答
5033 浏览

asp.net - Asp.net 动态验证器在 Chrome 或 Safari 中不起作用

好的,我正在动态创建 Asp.net 验证控件并将它们插入到更新面板中。验证在 IE 和 Firefox 中有效,但在 Chrome 或 Safari 中无效。

这是aspx文件。不要问我为什么不使用按钮服务器控件...

这是后面的代码:

这是课程:

有没有人知道如何让它在 Chrome 和 Safari 中工作?

0 投票
4 回答
913 浏览

javascript - 验证服务器控件在任何方面都比 javascript 更好吗?

验证服务器控件是否比 javascript 更好?它们是否限制了我们,因为我们只能使用它们提供的功能。请帮助我。我在自己的博客上阅读了有关验证服务器控件的信息

0 投票
2 回答
2081 浏览

asp.net - 如何清除按钮单击事件中的 CustomValidator 错误?

我有一个用于输入日期的复合用户控件:

替代文字

CustomValidator 将包括服务器端验证代码。如果用户以任何方式更改日期值,我希望通过客户端脚本清除错误消息。为此,我包含以下代码以将两个下拉菜单和年份文本框连接到验证控件:

但是,我还希望在用户单击清除按钮时清除验证错误。当用户单击清除按钮时,其他 3 个控件将被重置。为了避免回发,清除按钮是一个常规的 HTML 按钮,带有一个重置 3 个控件的 OnClick 事件。不幸的是,ValidatorHookupControlID 方法似乎不适用于 HTML 控件,因此我想将 HTML Button 更改为 ASP 按钮,然后改为 Hookup 到该控件。但是,我似乎无法消除默认情况下与 ASP 按钮控件关联的回发功能。我尝试将 UseSubmitBehavior 设置为 False,但它仍然提交。我试图在我的 btnClear_OnClick 客户端代码中返回 false,但是发送到浏览器的代码在我调用之后包含了一个 DoPostback 调用。

我没有添加 OnClick 代码,而是尝试覆盖它,但 DoPostBack 代码仍然包含在发送到浏览器的最终代码中。

我该怎么做才能让 Clear 按钮在单击时清除 CustomValidator 错误并避免回发?

0 投票
1 回答
184 浏览

asp.net - 如何在不同时执行即时验证的情况下重新启用验证控件?

当我调用此函数以从客户端 javascript 启用验证器时:

所需的验证控件立即执行验证,发现相关文本框中的值空白并将焦点设置到文本框(因为 SetFocusOnError 设置为 true)。结果,副作用是焦点转移到了与验证控件关联的控件,例如 txtSpecifyOccupation。

也许有一种方法可以启用(必需的)验证器,而无需同时执行验证(至少在用户选择它之前?)

我希望 txtSpecifyOccupation 文本框的验证仅在页面提交时或当用户选择了所需的 txtSpecifyoccupation 文本框时发生。

我怎样才能做到这一点?

0 投票
1 回答
2549 浏览

asp.net - 从客户端,强制整个页面验证

我有一个 ASP 按钮,我已为其设置 OnClientClick 属性以显示 javascript 确认消息。但是,我只希望在所有客户端验证都通过后显示此消息。

我怎样才能做到这一点?从本质上讲,我认为我需要从客户端强制页面级别验证,然后,只有当它通过时,才会显示确认框。

0 投票
0 回答
1306 浏览

asp.net - ASP.NET 使用不同的验证组验证所有验证器

我正在编写一个 ASP.NET 页面并尝试让验证工作。我的问题是我有一个包含多个自定义网格控件的转发器,每个控件都有验证器和验证摘要。

起初,我没有分配任何验证组,但这最终使验证摘要出现在每个网格中,只要有一个错误(我想,因为验证摘要的验证组没有设置,这意味着它捕获了所有验证错误)。

所以我为每个网格分配了一个单独的验证组,对于控件上的某个属性是唯一的。但是我在页面底部有一个按钮(没有验证组),需要验证输入。没有验证组,它不会自动验证网格的验证器,所以我添加了一个单击处理程序,它调用Page_ClientValidate(). 没有骰子——验证无处不在。

好的,所以我遍历验证组并调用Page_ClientValidate(validationGroup)每个验证组(如果它有任何验证器)。当只有一个网格有验证器时工作正常,但当两个或更多有验证器时,它会自动隐藏所有验证摘要,但最后一个已检查。有什么方法可以禁用这种行为,或者有更好的方法来完全做到这一点?

如果需要,我想我可以在完成迭代验证后查看并取消隐藏其他验证摘要(尽管这可能有其他含义),但我还需要取消隐藏验证器显示(我正在使用表示无效字段的图像)。这似乎是一个令人讨厌且可能很脆弱的解决方案。

编辑:哦,一个转折。我尝试采用我最后提到的方法——重新显示无效的隐藏验证器/验证摘要——但 Microsoft 代码也阻止了这一点;在ValidatorValidate(validator, validationGroup, event)方法的第一行(由Page_ClientValidate(validationGroup)页面中的每个验证器调用),validator.isvalid设置为true,并且仅设置为条件内验证函数的返回值,该条件仅在validationGroup参数与验证器匹配时运行。结果是,隐藏的验证器都被标记为有效,因此很难在事后确定验证器是否有效,因为它实际上是有效的,或者是因为微软在设计客户端验证代码时很愚蠢。

0 投票
3 回答
396 浏览

asp.net - 当验证失败时我需要修改 HTML 时,是否可以使用 ASP.NET 验证控件?

假设我在 ASP.NET 页面上的文本框有以下 HTML:

像这样向此页面添加必填字段验证器很容易。

但是如果这个文本框验证失败,我需要稍微修改一下 HTML。我需要向 DIV 添加一个 CSS 类。因此,如果用户将此字段留空,我需要 HTML 如下所示:

这可能吗?我不知道是否有一种方法可以编写代码,只有在这个特定的验证器控件验证失败或其他情况下才会触发。我知道我可以编写在整个页面无效时运行的代码。但我只想在此验证器返回无效时运行此代码。希望这是有道理的。

科里

0 投票
1 回答
91 浏览

asp.net - 在验证代码中的变量时使用哪个验证控件(而不是另一个控件)?

假设我有一个字符串列表。我有一个 TextBox 和一个ADD 按钮,它不向列表添加空值。

页面上还有一个NEXT按钮。单击下一步按钮时,列表的内容将显示在另一个页面上。我想继续进行验证,以便用户只有在列表不为空(至少包含一个元素)时才能访问结果页面。

另外,我希望摘要验证显示错误消息,以保持显示错误的标准方式。这是我用来检查单击了哪个按钮以及列表中的元素数量的代码。

  1. 我如何进行验证,即我需要哪个验证控件?
  2. 如何向摘要验证控件显示错误消息?

感谢您的帮助