有没有办法在文件上传窗口的下拉菜单中只显示特定的文件类型,如下所示,通过ASP.NET?例如,我只想允许从资源管理器中选择* .xlsx文件。我可能已经在某些应用程序中看到过这种情况,但无法找到实现它的方法。
答案 0 :(得分:2)
对于excel,您可以尝试:
<input type="file" name="myFile" accept="application/vnd.ms-excel" />
如果要使用asp.net fileupdload控件应该可以编写
<asp:FileUpload id="someId" accept="application/vnd.ms-excel" runat="server" />
但你不能依赖它跨浏览器。您仍然需要在后面的代码中验证该文件。验证后面代码中文件的最简单方法(但绝不是全面的)是通过调用方法Path.GetFileExtension(fileName)
来检查扩展名,如果是错误的扩展名,则会向用户返回错误。我通常把这张支票放在“submitbutton_click”事件中。
答案 1 :(得分:1)
无法开箱即可限制文件类型,但您可以使用RegularExpressionValidator检查文件扩展名:
<asp:RegularExpressionValidator ControlToValidate="FUpload1" ValidationExpression="^.*\.(jpg|JPG)$" runat="server" />