我用<input type="file" id="fileUpload" runat="server">
上传一个ASP文件.NET应用程序.我想限制上传的文件类型(例如:限制为.xls或.xlsx文件扩展名).
JavaScript或服务器端验证都可以(只要服务器端验证在上传文件之前进行——可能会上传一些非常大的文件,所以任何验证都需要在上传实际文件之前进行).
我用<input type="file" id="fileUpload" runat="server">
上传一个ASP文件.NET应用程序.我想限制上传的文件类型(例如:限制为.xls或.xlsx文件扩展名).
JavaScript或服务器端验证都可以(只要服务器端验证在上传文件之前进行——可能会上传一些非常大的文件,所以任何验证都需要在上传实际文件之前进行).
看起来你的 Select 有限,因为你希望在上传之前进行判断.我认为最好是使用javascript来验证文件的扩展名.您可以构建一个有效扩展名的散列,然后查看正在上载的文件的扩展名是否存在于散列中.
HTML:
<input type="file" name="FILENAME" size="20" onchange="check_extension(this.value,"upload");"/>
<input type="submit" id="upload" name="upload" value="Attach" disabled="disabled" />
Javascript:
var hash = {
'xls' : 1,
'xlsx' : 1,
};
function check_extension(filename,submitId) {
var re = /\..+$/;
var ext = filename.match(re);
var submitEl = document.getElementById(submitId);
if (hash[ext]) {
submitEl.disabled = false;
return true;
} else {
alert("Invalid filename, please select another file");
submitEl.disabled = true;
return false;
}
}