La meilleure façon de valider la monnaie d'entrée?

J'ai créé la zone de texte et CompareValidator au-dessous de laquelle j'ai pensé permettrait d'entrée dans les formes suivantes:

  • 5
  • 5.00
  • $5.00

Malheureusement ça ne permettant pas la version avec le signe du dollar en elle. Quel est le point de faire une vérification du type contre de la monnaie si vous ne laissez pas le signe dollar? Est-il un moyen pour permettre à ce symbole?

            <asp:TextBox ID="tb_CostShare" runat="server" Text='<%# Eval("CostShare", "{0:$0.00}")%>' CausesValidation="true" />
            <asp:CompareValidator   ID="vld_CostShare" 
                                    runat="server" 
                                    ControlToValidate="tb_CostShare" 
                                    Operator="DataTypeCheck" 
                                    Type="Currency" 
                                    ValidationGroup="vld" 
                                    ErrorMessage="You must enter a dollar amount for 'Cost Share'." />    
  • Si vous utilisez {0:c} à la place?
  • Un bureau de validation pourrait inclure des monnaies autres que le dollar...
  • Je ne veux pas valider rien d'autre que l'USD. @Greg - Comment puis-je utiliser {0:c} pour valider?
  • Je ne sais pas, peut-être qu'il ne fonctionne pas de cette façon.
  • Pourquoi voulez-vous le signe de dollar dans la validation? Vous devez juste être de la validation de la 5.35. Si vous souhaitez afficher le signe"$", placez une étiquette sur la face avant de la zone de texte. De cette façon, vous pouvez également stocker comme un nombre décimal en SQL.
  • Je veux accepter une entrée d'utilisateur si il a un signe de dollar ou pas. Ce que je suis l'affichage est une question distincte qui est déjà manipulé correctement.

InformationsquelleAutor Abe Miessler | 2010-04-22