js验证上传图片大小,img.src 赋值有关问题

js验证上传图片大小,img.src 赋值问题
用 <input  type = "file" />上传图片前,需要验证图片大小,在网上搜的大多是获取上传文件路径,赋值给img.src ,再通过img对象有的属性fileSize比较大小,可是问题是img.src 不可能通过本地文件的路径显示出img,也就是img对象获取不到,哪儿获取到img的fileSize呢?

代码大致如下:

function CheckFileSize(sAction){
    var obj = $("imgProduct");
    if(obj.value != ""){

        var val = obj.value;
         
        img.src = obj.value;

        var img = new Image();
        img.onreadystatechange = function(){
            if(img.readyState == "complete"){
                if(img.fileSize <=0 || img.fileSize > imgSize){
                    alert("当前文件大小" + img.fileSize / 1024 + "KB, 超出最大限制 " + imgSize / 1024 + "KB");
                }else{
                    submit1(sAction, true);
                }
            }
        }
         
       
    }else{
        submit1(sAction, true);
    }
}

奇怪的是网上大多都是这个思路,哪位大虾给指点一下,这种方式到底可行不可行,如果不可行,有什么好的方法判断文件大小呢?
------解决思路----------------------
建议使用html5的特性fileInput.get(0).files[0].size; 或者flash实现
http://www.html5rocks.com/en/tutorials/file/dndfiles/

------解决思路----------------------
引用:
Quote: 引用:

一般flash来做兼容性好些,uploadify或者swfpload。。可以设置允许上传的文件大小


一开始用的uploadify,后台处理时不太合适,就改用最原始的input type = file控件了


uploadify用的flash会导致cookie丢失,从而获取不到session,需要给uploadify增加session会话id,服务器端通过这个id重新设置下session才能正确获取

就算用uploadify这种能限制客户端文件大小选择的插件,你的服务器端还是得重新验证过一遍的。。所有最保险就是在服务器端进行验证