所以我有一个FileUpload控件如何只对excel文件进行过滤?现在它有选项All Files(。),我只需要(.xls)和(.xlsx)
<asp:FileUpload ID="FileUpload1" runat="server" />
答案 0 :(得分:1)
请参阅:http://www.codeproject.com/Tips/700593/FileUpload-Filter-File-Type-File-Extension-File-Si
<script src="jquery-1.9.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
var validFilesTypes = ["bmp", "gif", "png", "jpg",
"jpeg", "doc", "docx", "xls", "xlsx",
"htm", "html", "rar", "zip", "txt", "pdf"];
$('.s').change(function () {
CheckExtension(this);
validateFileSize(this);
});
function CheckExtension(e) {
/*global document: false */
var file = e;
var path = file.value;
var ext = path.substring(path.lastIndexOf(".") + 1, path.length).toLowerCase();
var isValidFile = false;
for (var i = 0; i < validFilesTypes.length; i++) {
if (ext == validFilesTypes[i]) {
isValidFile = true;
break;
}
}
if (!isValidFile) {
e.value = null;
alert("Invalid File. Unknown Extension Of Tender Doc" +
"Valid extensions are:\n\n" + validFilesTypes.join(", "));
}
return isValidFile;
}
function validateFileSize(e) {
/*global document: false */
var file = e;
var fileSize = file.files[0].size;
var isValidFile = false;
if (fileSize !== 0 && fileSize <= 25214400) {
isValidFile = true;
}
if (!isValidFile) {
e.value = null;
alert("File Size Should be Greater than 0 and less than 25 mb");
}
return isValidFile;
}
});
</script>
并将其称为:
<asp:fileupload id="FileUpload1" CssClass="s" runat="server"></asp:fileupload>
或将其添加到代码后面:
FileUpload1.CssClass = "s";