fileupload的问题只允许图像

时间:2010-10-26 14:57:53

标签: asp.net regex validation

                <asp:RegularExpressionValidator 
 id="RegularExpressionValidator1" runat="server" 
 ErrorMessage="Only images are allowed!" 
 ValidationExpression="^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w].*))
    +(.jpg|.JPG|.gif|.GIF|.png|.PNG|.jpeg|.JPEG)$" 
 ControlToValidate="fileUpEx"></asp:RegularExpressionValidator>

                <asp:FileUpload ID="fileUpEx" runat="server" />

无论我选择哪个文件,即使文件是图像文件,这也会引发验证器,任何想法?

2 个答案:

答案 0 :(得分:2)

无法保证浏览器会将文件的完整客户端路径插入到输入字段中。某些浏览器仅显示文件名本身。你最好使用一个只测试文件扩展名的正则表达式。

试试这个:

^?($(i?)jpg|\.png|\.jpeg|\.gif)$

答案 1 :(得分:1)

试试这个会起作用:

^((i?)[a-z]|[^&])*\.(i?)jpg|\.png|\.jpeg|\.gif