2014-01-27 151 views
1

我有一个页面,其中有许多RequiredFieldValidator控件验证文本框。验证消息总是出现,验证器不起作用。无论文本框是否包含任何文本,验证消息仍然可见。RequiredFieldValidator无法在服务器上工作

这不是在本地发生,而只发生在远程服务器上。我想知道它是否是配置问题,但我看不到配置中可能导致它的任何明显不同。

一个例子:

<asp:TextBox ID="Name" runat="server" CssClass="text full"></asp:TextBox> 
<asp:RequiredFieldValidator ID="nameRequiredFieldValidator" runat="server" CssClass="requiredError" ControlToValidate="Name" Display="Dynamic" /> 

页面上的所有其他验证工作正常,它只是有问题的RequiredFieldValidators。

没有JS错误,没有文件显示丢失或未能加载。我通过Fiddler和浏览器验证了这一点。

我在所有浏览器中遇到了同样的问题,我尝试过。

任何建议将是最受欢迎的。谢谢。

+0

你能为我们创建一个[jsfiddle](http://jsfiddle.net)吗? –

+1

非常感谢您的回复。对不起,你到底想把我包括在jsfiddle中?这会重新创建ASP.NET验证吗? – wiseowl2828

+0

对不起。我刚刚意识到jsfiddle不支持ASP(也会很复杂)。相反,你可以指向一个网站,我们可以看看这个问题?或者,您可以将生成的HTML源代码的相关部分粘贴到您的文章中吗?也许我们可以从中收集一些东西。 –

回答

1

这里的问题是最近应用的CSS规则覆盖了内嵌的asp.net内联样式。这意味着验证实际上是正常工作的,但是随着内联样式=“display:none”被覆盖,验证消息不断显示。

这仅影响到必填字段验证程序,因为这些验证程序有不同的CSS类应用于其他验证程序。与网站特定的网址重写器完全无关的另一个问题是阻止表单提交,这进一步混淆了问题。还是要谢谢你的帮助。

相关问题