ajax 上传文件大小,【JS/ajax】无刷新验证上传文件大小问题

最近做了一个无刷新验证图片大小的功能,我是利用js结合ajax控件制作的。由于属于WEB项目。所以我每个浏览器都测试。确发现了一个问题

代码如下:

function perImg(o,maxsize)

{

var filepath="";

var x=document.getElementById(o.id);//file对象

var agent=window.navigator.userAgent;

var isIE7 = agent.indexOf('MSIE 7.0') != -1;

var isIE8 = agent.indexOf('MSIE 8.0') != -1;

if( !o.value.match(/.jpg|.gif|.png|.bmp/i))

{

alert('图片格式无效!');

document.getElementById('image').src="";

Upload.clear(x);

}

if(agent.indexOf("Firefox")!=-1)//判断浏览器的类型

{//火狐

document.getElementById('image').src = x.files[0].getAsDataURL();

filepath = x.value;//获取图片路径

var size = x.files[0].fileSize;

if (size > parseInt(maxsize))

{

alert("文件不能大于300K!");

Upload.clear(x);

document.getElementById('image').src="";//清除对应IMG控件

}

alert('FF');

}

else if (isIE7 || isIE8)

{ //IE7 IE8

x.select();

document.getElementById('image').src= document.selection.createRange().text;

filepath = document.selection.createRange().text;

alert('IE78');

}

else

{//IE6

document.getElementById('image').src =x.value;

filepath = x.value;

alert('IE6');

}

PageMethods.ValidateFile(filepath, maxsize, ieCallBack);

}

function ieCallBack(response)

{

if (response == "invalid")

{

alert("文件不能大于300K!");

var file=document.getElementById('file');

document.getElementById('image').src="";

Upload.clear(file);

}

}

后台代码:

[System.Web.Services.WebMethod]

public static string ValidateFile(string filepath, string filezie)

{

try

{

FileStream fs = new FileStream(filepath, FileMode.Open, FileAccess.Read);

if (fs.Length > int.Parse(filezie))

return "invalid";

return "valid";

}

catch

{

return "error";//前台什么都不做

}

}

2010-10-13-1.jpg

限制图片大小不能超过300k  本机IE6运行如图:

2010-10-13-2.jpg

但是我如果在其他机器连接本机测试同样的浏览器就没有弹出提示 如图:

2010-10-13-3.jpg

请问一下,这是什么原因造成的?感谢买海参选煜诚 煜诚海参 真心品质 http://jinweb.taobao.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值