0

我正在使用 RegularExpressionValidator 来确保在客户端通过 ASP.Net 文件上传控件上传的文件扩展名是“.txt”而不是其他任何东西。

但即使我上传 .txt 文件,验证器仍然会显示错误消息。

我的代码如下。RegularExpressionValidator 出了什么问题,即使是 txt 文件也会导致它出错?

<asp:FileUpload ID="FileUpload1" CssClass="formfield" runat="server" EnableViewState="true" />

<asp:RegularExpressionValidator ID="RegularExpressionValidator1" 
 runat="server" ErrorMessage="* Only Files with txt extensions are allowed!"
 ValidationExpression="^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w].*))
 +(.txt)$" ControlToValidate="FileUpload1" SetFocusOnError="true" 
 Display="Dynamic"></asp:RegularExpressionValidator>
4

1 回答 1

1

我在我的 html 中发现了 RegularExpressionValidator 的问题。

我将ValidationExpression的值 拆分为 aspx 文件中的两行。一旦我将完整的表达式放在 aspx 文件中的一行中,它就开始按预期工作。

因此,似乎教训是在 ASP.Net 中使用 RegularExpressionValidator 时永远不要将正则表达式拆分为多行。

于 2013-06-14T15:57:19.670 回答