http://zhidao.baidu.com/question/87406080
function getFileSize (fileName) {
window.oldOnError = window.onerror;
window.onerror = function (err) {
if (err.indexOf('utomation') != -1) {
alert('file access not possible');
return true;
}
else
return false;
};
var fso = new ActiveXObject('Scripting.FileSystemObject');
var file = fso.GetFile(fileName);
window.onerror = window.oldOnError;
return file.Size;
}
function showImageDimensions () {
alert(this.width + 'x' + this.height);
}
我在HTML页面中是用上面的javascript脚本是可以获取文件附件的大小
但是在jsp页面中就不行
请指教
首先你要明白一些定义, 1 javascript 运行在客户端,即用户的浏览器上, 2 jsp运行服务器端,比如装有tomcat的电脑上 3 HTML只会运行在客户端浏览器上 3 放在HTML代码中的javascript所以也只能运行在客户端浏览器上 4 放在jsp中javascript在服务器端运行生成HTML代码发送到客户端浏览器上,所以放在jsp中的javascript最终还是只能运行在客户端浏览器上 5 你欲获取的附件大小在哪里,客户端还是服务器端呢, 6 目前考虑安全性方面,客户端一般是禁止在其浏览器上运行的javascript防问其电脑的文件,而且不同的客户端浏览器安全设置是不一样的,所以如果想获取客户端文件大小是行不通的, 7 目前流行的解决办法,一般既然是附件,都是要上传到服务器上的,可以上传的过程中在服务器端进行检查,在上传附件页面要告诉客户端用户附件上传大小的限制,这种提示在网络会经常见到的(推荐JSP中我常用到的上传组件jspSmartUpload) 希望这些有抛引作用
本文探讨了使用JavaScript在不同环境中获取文件大小的方法及其限制。详细解释了为何在客户端与服务器端的区别导致某些操作不可行,并提出了合理的解决方案。
1995

被折叠的 条评论
为什么被折叠?



