李威 さぽている

小说翻译,日语相关转移至http://blog.hjenglish.com/liwei

[asp.net]FileUpload到底干了什么见不得人的事

嗯,我承认自己是半个标题党了~

FileUpload在asp.net中有两个限制,一是文件大小的限制,默认4M,但可以更改。另一个是无法设置上传文件路径,filename和Postfile.filename都是只读属性,就算能设置也不一定能显示在那个Textbox里。

首先,它会先检查路径不空的话,检查第二位是否为冒号(:),如果不是,点击按钮不会触发事件。例如随便输入123,点击是没反应的。
要想它对123也有反应,就需要加客户端script了,设置onclientclick属性。
function Upload()
    {
        var UploadString = document.getElementById("FileUpload1").value;
        if (UploadString.substr(1, 1) != ':' && UploadString != '')
        {
  alert("====");        
  document.getElementById("FileUpload1").focus();
         return false;
        }
     return true;
    }

其次,在点击按钮,提交服务器时,不管按钮事件中是否有FileUpload的成员,它均会先读取文件信息。如果大于设置的文件大小(默认4M),直接转到无法显示页面。这个也是拿它没法,需要在客户端先检查~~至于如何检查,我没写,留给JS强人来解决吧。

接下来,文件信息读取后被设置到控件成员中,那就是我们知道的事了。

这个只是经验所得,有问题大家尽管提~~

关于读取文件信息,IE先读取文件到内存,大于预定值就不读取直接转到无法显示页面,不大于就读取完,放在某地,不了解是否已传到服务器上(自己的电脑就是服务器,无法判断)。最后调用saveas方法时,将文件写到相应地点。

posted on 2006-09-09 12:30 李威 阅读(2441) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: