FileUpload - RequiredFieldValidator和RegularExpressionValidator不会触发

时间:2013-06-05 14:33:00

标签: asp.net regex validation file-upload requiredfieldvalidator

我有一个FileUpload控件,我附加了RequiredFieldValidatorRegularExpressionValidator。我的代码在我的计算机上工作正常,但在生产中RequiredFieldValidatorRegularExpressionValidator都没有。这对我来说很奇怪,我对此没有任何解释。

我的代码是:

<asp:FileUpload ID="XlsUpload" runat="server" CssClass="TextInput" Width="250" />
<asp:LinkButton id="lbnUploadFile" Runat="server" CssClass="MainLink" ToolTip="Upload File" OnClick="lbnUploadFile_Click">Upload File</asp:LinkButton>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" CssClass="warning" runat="server" ControlToValidate="XlsUpload" ErrorMessage="Please Upload a File!"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" CssClass="warning" runat="server" ControlToValidate="XlsUpload"
                ErrorMessage="Please upload only txt and docfiles" ValidationExpression=".*\.([tT][xX][tT]|[dD][oO][cC])"></asp:RegularExpressionValidator>

原因可能是什么?

1 个答案:

答案 0 :(得分:0)

这对我而言有效:

<asp:FileUpload runat="server" ID="FUFileCurriculum" />
<asp:RegularExpressionValidator runat="server" ID="FUFileCurriculumValidator" ControlToValidate="FUFileCurriculum" ErrorMessage="Unauthorized file extension" ValidationExpression="^.+\.(?!exe|js|bat).*$" />

它可以避免上传以exe,js或bat结尾的文件。