2014-01-27 182 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類應用於其他驗證程序。與網站特定的網址重寫器完全無關的另一個問題是阻止表單提交,這進一步混淆了問題。還是要謝謝你的幫助。

相關問題