通用的檢查方法。首先定義好有效副檔名,存放在陣列中。
在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: