通用的檢查方法。首先定義好有效的文件擴展名,存放在陣列中。
在JavaScript獲取FileUpload控件的文件路徑,並取得路徑中的文件擴展名。再與陣列中的擴展名比較,如果存在,說明上傳的文件是有效的,反之無效。
復制代碼 代碼如下:
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:Button ID="btnUpload" runat="server" Text="Upload" OnClientClick="return ValidateFile()" />
上面的HTML的Button按鈕有一個OnClientClick事件,那是JavaScript的腳本方法:
復制代碼 代碼如下:
<script type="text/javascript">
var validFilesTypes = ["png", "jpg", "jpeg", "gif"];
function ValidateFile() {
var file = document.getElementById("<%=FileUpload1.ClientID%>");
var filePath = file.value;
var ext = filePath.substring(filePath.lastIndexOf(".") + 1, filePath.length).toLowerCase();
var isValidFile = false;
for (var i = 0; i < validFilesTypes.length; i++) {
if (ext == validFilesTypes[i]) {
isValidFile = true;
break;
}
}
if (!isValidFile) {
alert("無效的文件。請上傳文件擴展名為:\n\n" + validFilesTypes.join(", "));
}
return isValidFile;
}
</script>
Demo: