3 回答

TA贡献1770条经验 获得超3个赞
似乎您选择的选项有限,因为您希望在上传之前进行检查。我认为最好的方法是使用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;
}
}

TA贡献1830条经验 获得超3个赞
使用正则表达式验证器非常简单。
<asp:RegularExpressionValidator
id="RegularExpressionValidator1"
runat="server"
ErrorMessage="Only zip file is allowed!"
ValidationExpression ="^.+(.zip|.ZIP)$"
ControlToValidate="FileUpload1"
> </asp:RegularExpressionValidator>
添加回答
举报