【发布时间】:2009-08-22 20:21:38
【问题描述】:
您好,这个问题我已经有一段时间了。
我在 DetailsView 中有一个绑定的文本框,我添加了一个 RegularExpressionValidator。然而,在运行 Web 表单后,我发现该值从未被认为是有效的,即使它应该是有效的。该字段应仅在值为空或正好是 3 个大写字母时验证。如果我输入应该可以工作的“CBA”,我会得到这个表达式作为错误消息:^[A-Z]ABC$ 其中 ABC 是字段从数据源获得的值。所以我猜这与 DetailsView 中的 Eval() 函数有关,但我不明白究竟是什么以及如何避免它。
<EditItemTemplate>
<asp:TextBox ID="TBDepartFrom" runat="server" Text='<%# Bind("DepartFrom") %>'>
</asp:TextBox>
<asp:RegularExpressionValidator
ID="RegularExpressionValidator1" ControlToValidate="TBDepartFrom"
runat="server"
ErrorMessage="This code is invalid!"
Text='<%# Eval("DepartFrom", "^[A-Z]{3}$") %>'>
</asp:RegularExpressionValidator>
</EditItemTemplate>
【问题讨论】: