function s()
{
if(document.frm.opus.value!=""){
if(img)img.removeNode(true);
img=document.createElement("img");
img.style.position="absolute";
img.style.visibility="hidden";
img.attachEvent("onreadystatechange",orsc);
img.attachEvent("onerror",oe);
document.body.insertAdjacentElement("beforeend",img);
img.src=document.frm.opus.value;}
else{
   alert("请选择文件!");
pflag=false;
   return false;}
}
这部分的代码应该是上传图片的时候用到
上面这个函数是如果opus的值不为空的时候,动态的产生一个Image控件(客户端),Image的图片就是Opus的值
function oe()
{
alert("请确认您上传的文件是图片文件!");
pflag=false;
return false;
}
function orsc()
{
if(img.readyState!="complete"){pflag=false;return false;}

if(img.fileSize>200*1024){
alert("文件大小不能大于200K!");pflag=false;return false;}
else{
pflag=true;
document.frm.submit();
return true;
}
}
图片如果发生了改变时,触发上面函数判断图片的大小,如果图片的大小小于200×1024则提交页面

解决方案 »

  1.   

    回fly_miss(新年新气象) 高人:
    厉害!前辈顺便问一下,由于我是在vs2003平台下开发的,
    而document.Form1.opus其中的Form1 
    即是 <form id="Form1" method="post" runat="server" enctype="multipart/form-data"> 中 Form1 这个值吗?(id="Form1")还有document.Form1.opus 其中的 opus
    与 <INPUT type="file" size="50" runat="server" ID="opus" name="opus">
    中的哪一个对应? 是与ID的值对应 还是与name的值对应呀?注:上传这个服务器控件按钮的ID是 up  ,我已在cs文件里写up.Attributes.Add("onClick","return test();");
    在线等待!小弟搞了5个小时了,不得其解!期望求个完美答案,感谢万分!
      

  2.   

    document.Form1.opus.value 是指的是Form1的Form1中ID为opus的控件的值,即
    <INPUT type="file" size="50" runat="server" ID="opus" name="opus">
    的值,在Dom中,是与ID的值对于
      

  3.   

    现在问题是 上传这部分是一个用户控件,ascx文件来的,我在主页面调用之后 显示是
    <input type="submit" name="Photo1:up" value=" 上 传 " onclick="return test();if (typeof(Page_ClientValidate) == 'function') Page_ClientValidate(); " language="javascript" id="Photo1_up" />
    name="Photo1:up"        这个!
    我用 if(document.Form1.Photo1:up.value!="")
    {
    }
    这个都不行,真是晕呀