gpt4 book ai didi

ASP.net requiredFieldValidator 不阻止回发

转载 作者:行者123 更新时间:2023-12-02 10:11:25 25 4
gpt4 key购买 nike

我有一个问题,什么可以阻止 requiredFieldValidator 阻止回发。

我开始研究一个较旧但简单的 aspx 表单,我的前任使用手动服务器端表单验证(检查某些表单字段是否有值,以及是否在标签中不显示错误消息)。我想我应该清除一些不需要的代码并用RequiredFieldValidator 控件替换手动检查,但是虽然它们似乎正在验证,但它们并没有阻止回发。即,我显示了错误消息,但回发仍然发生。

表单非常简单,并且没有设置 CausesValidation="false"属性。我的控件如下所示:

 <asp:TextBox ID="txtPhone" Runat="server" Columns="20" MaxLength="20" />
<asp:RequiredFieldValidator ID="rfvPhone" runat="server" Display="Dynamic"
ErrorMessage="* Required" ControlToValidate="txtPhone" />

我在同一个项目中创建了一个全新的网络表单,只有一个文本框、验证器和提交按钮,它的行为方式相同。显示错误消息,但仍然发生回发。

是否存在会导致此行为的全局或项目范围设置? web.config 或 global.asax 中的某些内容?

最佳答案

哇。好吧,我发现了问题,基本上是通过创建一个全新的项目并将其 web.config 与我的旧项目进行逐行比较。原来罪魁祸首是这样的:

 <xhtmlConformance mode="Legacy"/>

如果我删除该行,我的验证将按照我预期的方式进行。谷歌搜索发现了一堆关于 VisualStudio 在将 Web 应用程序从 .net 1.1 升级到 .net 3.5 时如何将该行添加到 web.config 的博客文章。

博客文章主要提示该字段如何干扰 .net 的 AJAX 内容,但我猜它会以类似的方式与为 requiredFieldValidator 发出的 JavaScript 混淆。

关于ASP.net requiredFieldValidator 不阻止回发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/656098/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com