gpt4 book ai didi

asp.net - 可以让 CompareValidator 接受带逗号的数字吗?

转载 作者:行者123 更新时间:2023-12-04 17:58:28 29 4
gpt4 key购买 nike

我一直在对网页上的输入字段进行 Double 类型检查,但现在我需要允许逗号。这可以使用 CompareValidator 完成还是我需要使用正则表达式验证器?

最佳答案

而不是使用 Type="Double" ,尝试使用 Type="Currency" .它应该接受带和不带逗号的值,但它不会接受超过 2 个小数位。

下面是一个例子:

<asp:TextBox runat="server" ID="TextBox1" />
<asp:CompareValidator runat="server" ID="cValidator" ControlToValidate="TextBox1"
Type="Currency" Operator="DataTypeCheck" EnableClientScript="true"
ErrorMessage="Invalid format!" Display="Dynamic" />

否则为 RegularExpressionValidator可以工作,再加上 RequiredFieldValidator验证空条目(正则表达式验证器不会阻止空条目)。您可以使用 CustomValidator ,但如果您不想仅依赖带有回发的服务器端验证,则需要在 JavaScript 中提出客户端验证例程。此外,客户端解决方案可能涉及正则表达式,虽然不是太复杂,但整体验证需要做更多的工作。

这是使用 RegularExpressionValidator 的示例:
<asp:TextBox runat="server" ID="TextBox1" />
<asp:RequiredFieldValidator runat="server" ID="rfValidator" Display="Dynamic"
ControlToValidate="TextBox1" ErrorMessage="Required!" />
<asp:RegularExpressionValidator ID="reValidator" runat="server"
ControlToValidate="TextBox1"
EnableClientScript="True"
ErrorMessage="Invalid Format!"
Display="Dynamic"
ValidationExpression="(\d{1,3}(,\d{3})*\.\d{2})|(\d+(\.\d{2})?)" />

关于asp.net - 可以让 CompareValidator 接受带逗号的数字吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3613939/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com