2011-12-16 14 views
0

私は米国の電話番号用のテキストボックスを持っています。これについては、私はMaskedEditExtenderとRegularExpressionValidatorを使用して、ユーザーが正しい形式で番号を入力したかどうかを確認しています。MaskedEditExtender検証の問題

<ajax:MaskedEditExtender ID="meePhoneNumber" runat="server" Mask="999-999-9999" TargetControlID="tbComapnyPhoneNumber" MaskType="Number" ClearMaskOnLostFocus="false" AutoComplete="false" MessageValidatorTip="true" ErrorTooltipEnabled="true" /> 

<asp:RegularExpressionValidator ID="revCompanyPhone" runat="server" ValidationExpression="((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4}(x\d{0,})?" ControlToValidate="tbComapnyPhoneNumber" ErrorMessage="Please enter a valid phone number" Display="Dynamic" /> 

私はデータを保存するときに今、それはそれは、フィールドのバリデータを必要とされていない場合でも、テキストボックスを検証:以下のコードです。 ClearMaskOnLostFocusをtrueに変更すると、空のままにしてもデータは保存されますが、falseに変更すると保存されません。有効な値としてマスクテキストを検討する

答えて

1

フォースバリ:

ValidationExpression="(((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4}(x\d{0,})?)|(^___-___-____$)"