私はGridViewフッタテンプレートにテキストボックスを持っています。要件は、テキストボックスが0より大きく、小数点以下2桁までの数値でなければなりません。私はこのテキストボックスに次の3つのバリデータを持っています。私は12,3を置けばgridviewフッターのテキストボックスに対する複数のバリデーター
<asp:TemplateField HeaderText="Amount">
<ItemTemplate>
<asp:Label ID="Label_Amount" runat="server" Text='<%# Bind("Amount") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtAmount" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvAmount" runat="server" ErrorMessage="Amount is a required field"
ControlToValidate="txtAmount" Text="*" ForeColor="Red" ValidationGroup="Insert">
</asp:RequiredFieldValidator>
<asp:CompareValidator ID="cvAmount" runat="server" ErrorMessage="Amount must be > 0"
ControlToValidate="txtAmount" ValueToCompare="0" ValidationGroup="Insert" Text="*"
Type="Double" Operator="GreaterThan">
</asp:CompareValidator>
<asp:RegularExpressionValidator ID="revAmount" ControlToValidate="txtAmount" ValidationGroup="Insert" Text="*"
runat="server" ErrorMessage="Amount limits to two decimal places" ValidationExpression="^\d+(\.\d{1,2})?$">
</asp:RegularExpressionValidator>
</FooterTemplate>
</asp:TemplateField>
問題は、私は唯一の「> 0でなければならない金額」のエラーメッセージを表示したいです。しかし、代わりに2つのエラーメッセージが表示されます。第3正規エクスプレスバリデーターも発砲されます。なぜわからないのですか?私はこれをどのように解決するのだろうか? 3つの要件を組み合わせて正規表現を書くことはできますか?私はまた、CustomeValidatorを使用しようとしましたが、何とかJavaScript関数が呼び出されることはありません。助言がありますか?
html5(.Net 4.5+)用にプログラミングしていますか? – fnostro
私は上記のように尋ねました。もしあなたがそうなら、 '' – fnostro