2012-11-07 39 views
0

有没有什么方法可以在文件上传窗口的下拉菜单中只显示特定的文件类型,如下所示,通过ASP.NET?例如,我只想允许从浏览器中选择* .xlsx文件。我可能在某些应用程序中看到了这一点,但无法找到实现它的方法。只显示上传窗口中的特定文件类型?

SnapShot

+1

看看http://stackoverflow.com/questions/4328947/limit-file-format-when-using-input-type-file例如 – mortb

+0

有没有一个ASP.NET特定的解决方案呢?他们通过Javascript来完成它。 –

回答

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”事件中。

+0

谢谢。虽然它不在IE中工作。我必须为此做一些额外的工作。干杯! –

1

它不是可以限制文件类型开箱即用,但是你可以使用的RegularExpressionValidator检查文件的扩展名:

<asp:RegularExpressionValidator ControlToValidate="FUpload1" ValidationExpression="^.*\.(jpg|JPG)$" runat="server" /> 
+0

我之前做过,但是我的PM对此有点不满。这不是必需的。 –

相关问题