ASP.NET 需要从客户端更改验证器

Posted

技术标签:

【中文标题】ASP.NET 需要从客户端更改验证器【英文标题】:ASP.NET required validator change from client side 【发布时间】:2017-10-12 17:01:47 【问题描述】:

我想知道是否可以从客户端更改所需验证器的错误消息。我不想创建另一个自定义验证器。

我已经需要验证器并且范围都检查一个文本框。当用户键入特定长度的数字时,我会进行 AJAX 调用以检查该数字是否已在数据库中。如果是我想用自定义消息“触发”其中一个验证器并将 IsValid 属性设置为 false。

我试过了

$("#<%=vldReqID.ClientID%>").attr('errormessage', 'User already exists');

我在互联网上找到的,但它对我不起作用。

有没有办法“注入” ASP.NET 验证器,或者我必须添加我的自定义验证器?

【问题讨论】:

【参考方案1】:

html 中,Validator 错误消息只不过是带有 display:none 样式的 span 元素。因此,您只需更改该 span 元素的内容即可。

document.getElementById("<%= RequiredFieldValidator1.ClientID %>").innerHTML = "Error message changed!";

【讨论】:

是否还有办法将其标记为无效以不允许页面回发? 那么创建一个可以验证多种情况的自定义验证器会更容易。

以上是关于ASP.NET 需要从客户端更改验证器的主要内容,如果未能解决你的问题,请参考以下文章

更改 ASP.NET MVC 请求验证响应

如何在 ASP.Net MVC Identity 2 中更改密码验证?

ASP.NET 验证失败时更改文本框的 css 类

如何从 JavaScript 触发 ASP.NET Core 客户端验证

启用使用 jquery 禁用 asp.net 验证控件

ASP.NET Web API 身份验证