-1
在我的應用程序中,我有一個文件上傳器,它接受單個文件上傳控件中的多個文件,我需要驗證該文件上傳器中所有文件的擴展名以這種方式它應該只接受doc和docx。假設我選擇文件上傳器中的5個文件,所有文件應該是-b.doc,-b.docx,-b.DOC和-b.DOCX,if除了這四個以外,還有其他擴展我應該顯示錯誤消息並清除那些位於該特定文件上傳器中的文件,我如何在下面執行此操作是我的文件上傳器代碼。如何使用ASP .NET驗證多文件上傳器中的所有文件C#
<asp:FileUpload ID="filDoc" runat="server" multiple="multiple"/>
我嘗試下面的代碼的問題是它顯示警報,而不是它應該顯示錯誤消息應該清除文件上傳後的文件顯示錯誤消息,但它顯示兩個文件
<asp:FileUpload ID="filDoc" runat="server" multiple="multiple" onchange ="checkFileExtension(this);"/>
<script type="text/javascript">
function checkFileExtension(elem) {
var filePath = elem.value;
if (filePath.indexOf('.') == -1)
return false;
var validExtensions = new Array();
var ext = filePath.substring(filePath.lastIndexOf('.') + 1).toLowerCase();
//Add valid extentions in this array
validExtensions[0] = 'doc';
//validExtensions[1] = 'pdf';
for (var i = 0; i < validExtensions.length; i++) {
if (ext == validExtensions[i])
return true;
}
alert('The file extension ' + ext.toUpperCase() + ' is not allowed!');
return false;
}
</script>
你就可以生產代碼爲更好的方式 – abc
做這件事我已經展示了一個辦法做到這一點@abc,我相信,你會發現一個更好的。探索一下。 –
沒有問題,但我有另一個文件上傳應該只檢查.wma和.aiff,這意味着它們包含 123.wma或123.WMA或123.aiff或123.AIFF在這裏,我只需要驗證.wma和。 aiff它不包含-b像那樣 它只包含具有擴展名的文件名 – abc