2015-10-16 51 views
0

我有以下RegularExpressionValidator只允許4位數。的RegularExpressionValidator錯誤消息不可見

<asp:RegularExpressionValidator ID="RegularExpressionValidator4" runat="server" ControlToValidate="txtPinCode" Display="Dynamic" ErrorMessage="Please make sure to select a PIN with four numeric digits" ValidationExpression="^\d{4,4}$" CssClass="caption">4 Digits Pincode</asp:RegularExpressionValidator> 

它確實驗證,但沒有顯示錯誤消息:

請務必選擇四個數字組成

而是不斷顯示文本4 Digits Pincode PIN碼。我希望將此文本替換爲錯誤消息。怎麼了?

+0

刪除'4位Pincode'文本 –

回答

0

你的「4位數Pincode」文本進入Text屬性。這是defined作爲

在驗證控制顯示的文本在驗證失敗時

在另一方面ErrorMessage屬性是

用於在的ValidationSummary顯示錯誤消息的文本當驗證失敗時控制

因此它們都被視爲錯誤消息,它不是「一個或另一個」。

您可能可以在輸入中使用該「4位數」文本作爲佔位符。或者只是在驗證器旁邊顯示它。

0

添加Display="None"這樣將不會顯示錯誤消息,直到您驗證。

<asp:RegularExpressionValidator ID="RegularExpressionValidator4" runat="server" ControlToValidate="txtPinCode" Display="None" ErrorMessage="Please make sure to select a PIN with four numeric digits" ValidationExpression="^\d{4,4}$" CssClass="caption"></asp:RegularExpressionValidator> 
+0

但我想在驗證之前顯示'4位Pincode'文本 – Nuke

+0

而不是僅僅「嘗試這個」,您可能想要解釋您所做的更改以及原因。那會讓答案更好。 –