问题描述
上传图片,用的是服务器端控件FileUpload,想用CustomValidator验证图片上传的大小,不想在后台判断,请问代码应该怎么写啊,在此跪求了,图片上传大小控制在200k
解决方案
解决方案二:
用CustomValidator来验证这个好像不好弄吧,你用JAVASCRIPT来控制呢百度里搜一下,有很多这样的资料的
解决方案三:
靠JShttp://blog.csdn.net/drago37net/archive/2006/09/12/1214938.aspx参考下...
解决方案四:
http://www.baidu.com/s?wd=javascript%BF%D8%D6%C6%C9%CF%B4%AB%CD%BC%C6%AC%B4%F3%D0%A1&cl=3
解决方案五:
<asp:CustomValidatorID="CustomValidator1"runat="server"ClientValidationFunction="checksize()"ErrorMessage="上传图片不得超过200K"></asp:CustomValidator>证:<inputtype="file"onchange="document.images('hideimg').src=this.value;"id="File1"runat="server"><imgid="hideimg"style="display:none"><scripttype="text/javascript">functionchecksize(){varfsize=document.images('hideimg').fileSize/1024;if(fsize>100){returnfalse;}else{returntrue;}}</script><asp:ButtonID="Button1"runat="server"Text="Button"/>
解决方案六:
>100那里改下改成200,我机器上找不到大于200K的图片,所以拿的100测的
解决方案七:
完整的:<asp:CustomValidatorID="CustomValidator1"runat="server"ClientValidationFunction="checksize()"ErrorMessage="上传图片不得超过200K"></asp:CustomValidator><inputtype="file"onchange="document.images('hideimg').src=this.value;"id="File1"runat="server"><imgid="hideimg"style="display:none"><scripttype="text/javascript">functionchecksize(){varfsize=document.images('hideimg').fileSize/1024;if(fsize>200){returntrue;}else{returnfalse;}}</script>
解决方案八:
到服务器端印验证吧那就不需要CustomValidator了,不合要求只要返回错误就好了
解决方案:
好像越写越错了
解决方案:
dugupiaoyun=================你的例子我试过了,不管传多大的都提示错误,我传了一个70多K的,也还是提示不超过200K<imgid="hideimg"style="display:none"><scripttype="text/javascript">functionchecksize(){varfsize=document.images('hideimg').fileSize/1024;if(fsize>200){returntrue;}else{returnfalse;}}</script><asp:FileUploadID="FileUpload1"onchange="document.images('hideimg').src=this.value;"runat="server"/><asp:ButtonID="Button2"runat="server"Text="上传"/>
解决方案:
顶一下
解决方案:
不用那些控件,在服务端判断多好,也安全控件很费资源,也容易出错
解决方案:
mark
解决方案:
是这样的,我是在后台判断的,因为需要上传的图片有12张,我要判断12次,我觉得代码写太多了,所以我想改成验证控件,每个验证控件都调用一个JS方法就行了
解决方案:
顶顶顶
解决方案:
顶顶顶
解决方案:
顶顶顶
解决方案:
后台判断长宽图片大小图片像素privatestringGetImageUrl(){stringImageUrl=null;stringImageType=Path.GetExtension(fileup.PostedFile.FileName);//获取图片格式if(ImageType.ToLower()==".jpg"||ImageType.ToLower()==".gif"||ImageType.ToLower()==".bmp"||ImageType.ToLower()==".gif"||ImageType.ToLower()==".png"){if(fileup.PostedFile.ContentLength>0){if(fileup.PostedFile.ContentLength<1024*1024){System.Drawing.Imageimg=System.Drawing.Image.FromStream(fileup.PostedFile.InputStream);intWidth=img.Width;intHeight=img.Height;if(Width>20000||Height>20000||fileup.PostedFile.ContentLength>1024*1024){Label2.Text=("不符:Width="+Width.ToString()+"<br>Height="+Height.ToString()+"<br>Size="+(this.fileup.PostedFile.ContentLength/1024).ToString("##,##0.00")+"K");}else{stringImageName=DateTime.Now.ToString("yyyyMMddhhmmssfff");//设置图片名称stringImagePath=ConfigurationManager.AppSettings["Upload"]+ImageName+ImageType;//获取图片在服务器上的虚拟路径fileup.PostedFile.SaveAs(ImagePath);ImageUrl=Convert.ToString("/upload/"+ImageName+ImageType);}}}}returnImageUrl;}
解决方案:
ding