如何将id作为FileUpload的参数传递给javascript函数以检查文件的扩展名和大小
我正在开发asp.net web应用程序,其中有6个文件上载控件 对于一个文件上传,我创建了一个javascript方法来检查文件扩展名和文件大小。 但如何动态地传递FileUpload的id,以便只有一种方法可以验证所有FileUpload 我的JavaScript代码是如何将id作为FileUpload的参数传递给javascript函数以检查文件的扩展名和大小,javascript,asp.net,file-upload,Javascript,Asp.net,File Upload,我正在开发asp.net web应用程序,其中有6个文件上载控件 对于一个文件上传,我创建了一个javascript方法来检查文件扩展名和文件大小。 但如何动态地传递FileUpload的id,以便只有一种方法可以验证所有FileUpload 我的JavaScript代码是 var validFilesTypes = ["bmp", "gif", "png", "jpg", "jpeg", "doc", "docx", "xls", "xlsx", "htm", "html"
var validFilesTypes = ["bmp", "gif", "png", "jpg", "jpeg", "doc", "docx", "xls", "xlsx", "htm", "html", "rar", "zip", "txt", "pdf"];
function CheckExtension() {
/*global document: false */
var file = document.getElementById("<%=txtTenderDoc.ClientID%>");
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) {
alert("Invalid File. Unknown Extension Of Tender Doc" + "Valid extensions are:\n\n" + validFilesTypes.join(", "));
}
return isValidFile;
}
function validateFileSize() {
/*global document: false */
var file = document.getElementById("<%=txtTenderDoc.ClientID%>");
var fileSize = file.files[0].size;
var isValidFile = false;
if (fileSize !== 0 && fileSize <= 25214400) {
isValidFile = true;
}
if (!isValidFile) {
alert("File Size Should be Greater than 0 and less than 25 mb");
}
return isValidFile;
}
var validFileTypes=[“bmp”、“gif”、“png”、“jpg”、“jpeg”、“doc”、“docx”、“xls”、“xlsx”、“htm”、“html”、“rar”、“zip”、“txt”、“pdf”];
函数CheckExtension(){
/*全局文档:false*/
var file=document.getElementById(“”);
var path=file.value;
var ext=path.substring(path.lastIndexOf(“.”+1,path.length).toLowerCase();
var isValidFile=false;
对于(变量i=0;i函数检查扩展名(Id){
/*全局文档:false*/
var file=document.getElementById(Id);
var path=file.value;
var ext=path.substring(path.lastIndexOf(“.”+1,path.length).toLowerCase();
var isValidFile=false;
对于(变量i=0;i 如果(fileSize!==0&&fileSize在网上搜索后,我终于解决了这个问题并发布了它,如果有人有类似的问题,这应该会有所帮助
// set which files are allowed in FileUpload Control
var validFilesTypes = ["bmp", "gif", "png", "jpg", "jpeg", "doc", "docx", "xls", "xlsx", "htm", "html", "rar", "zip", "txt", "pdf"];
function CheckExtension(file) {
/*global document: false */
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) {
alert("Invalid File. Unknown Extension Of Tender Doc" + "Valid extensions are:\n\n" + validFilesTypes.join(", "));
}
return isValidFile;
}
function validateFileSize(file) {
/*global document: false */
//getting size of the file
var fileSize = file.files[0].size;
var isValidFile = false;
if (fileSize !== 0 && fileSize <= 25214400) {
isValidFile = true;
}
if (!isValidFile) {
alert("File Size Should be Greater than 0 and less than 25 mb");
}
return isValidFile;
}
//设置FileUpload控件中允许的文件
var validFileTypes=[“bmp”、“gif”、“png”、“jpg”、“jpeg”、“doc”、“docx”、“xls”、“xlsx”、“htm”、“html”、“rar”、“zip”、“txt”、“pdf”];
函数检查扩展名(文件){
/*全局文档:false*/
var path=file.value;
var ext=path.substring(path.lastIndexOf(“.”+1,path.length).toLowerCase();
var isValidFile=false;
对于(变量i=0;i if(fileSize!==0&&fileSize我尝试过这个方法,在firebug中我得到了错误Uncaught Typeerror:无法读取此行附近null的属性'value',var path=file.value;您需要检查传入的Id值,看看它是否与页面中绘制的输入匹配。可能也应该检查文件是否为null。
function CheckExtension(Id) {
/*global document: false */
var file = document.getElementById(Id);
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) {
alert("Invalid File. Unknown Extension Of Tender Doc" + "Valid extensions are:\n\n" + validFilesTypes.join(", "));
}
return isValidFile;
}
function validateFileSize(Id) {
/*global document: false */
var file = document.getElementById(Id);
var fileSize = file.files[0].size;
var isValidFile = false;
if (fileSize !== 0 && fileSize <= 25214400) {
isValidFile = true;
}
if (!isValidFile) {
alert("File Size Should be Greater than 0 and less than 25 mb");
}
return isValidFile;
}
<asp:FileUpload ID="txtTenderDoc" onchange="var result= CheckExtension('textTenderDoc');validateFileSize('textTenderDoc'); return result" runat="server"></asp:FileUpload>
// set which files are allowed in FileUpload Control
var validFilesTypes = ["bmp", "gif", "png", "jpg", "jpeg", "doc", "docx", "xls", "xlsx", "htm", "html", "rar", "zip", "txt", "pdf"];
function CheckExtension(file) {
/*global document: false */
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) {
alert("Invalid File. Unknown Extension Of Tender Doc" + "Valid extensions are:\n\n" + validFilesTypes.join(", "));
}
return isValidFile;
}
function validateFileSize(file) {
/*global document: false */
//getting size of the file
var fileSize = file.files[0].size;
var isValidFile = false;
if (fileSize !== 0 && fileSize <= 25214400) {
isValidFile = true;
}
if (!isValidFile) {
alert("File Size Should be Greater than 0 and less than 25 mb");
}
return isValidFile;
}
<asp:FileUpload ID="fuTenderDoc" onchange="var result=CheckExtension(this);validateFileSize(this); return result"
runat="server"></asp:FileUpload>
<asp:FileUpload ID="fuBidDoc" onchange="var result=CheckExtension(this);validateFileSize(this); return result"
runat="server"></asp:FileUpload>
<asp:FileUpload ID="fuTechnicalDoc" onchange="var result=CheckExtension(this);validateFileSize(this); return result"
runat="server"></asp:FileUpload>