Como validar decimales asp c#

publicado por: Anonymous

Quisiera saber cómo poder validar un valor decimal en un TextBox, lo que pasa es que cuando escriba un decimal ejemplo 12..00 o 12...55 se cae mi sistema, quiero que se validen solo el punto y un solo punto en ASP C#.

<asp:TextBox ID="TxtMontoPagado" runat="server" placeholder="Monto Pagado"  Width="140px" Enabled="True"   class="form-control" title="Ingrese el Monto" data-error-msg="Ingrese el Monto" ></asp:TextBox>

<cc1:FilteredTextBoxExtender ID="FilteredTextBoxExtender8" runat="server" FilterType="Numbers, Custom" ValidChars=".," TargetControlID="TxtMontoPagado" />

solución

Puedes utilizar asp:RegularExpressionValidator para que te valide valores decimales a dos posiciones:

<asp:TextBox ID="TxtMontoPagado" runat="server" placeholder="Monto Pagado"  Width="140px" Enabled="True" class="form-control" title="Ingrese el Monto" data-error-msg="Ingrese el Monto" ></asp:TextBox>

<asp:RegularExpressionValidator ID="RegexDecimal" runat="server" ValidationExpression="((d+)((.d{1,2})?))$" ErrorMessage="Ingrese un monto decimal" places." ControlToValidate="TxtMontoPagado" />

Actualización:

Si deseas mostrar el mensaje de validación en un alert se tendría que agregar:

<asp:ValidationSummary runat="server" ShowMessageBox="true" ShowSummary="false" />

Debajo de asp:RegularExpressionValidator. Aquí puedes ver la demostración (dale Run para correr el proyecto).

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *