FileUpload读不到指定本地路径名,选择的本地路径中间被/fakepath/代替的解决方案,并实现文件类型筛选

在.NET 2.0和3.5中,FileUpload控件读取的本地路径会被/fakepath/替换。针对IE7和IE8浏览器,可以使用JavaScript来获取真实路径并存储在隐藏字段中。同时,文中提供了通过正则表达式验证文件类型的示例,确保用户只能选择.xml文件。
摘要由CSDN通过智能技术生成

在.NET 2.0,或.NET3.5使用服务器控件或HTML控件FileUpload时,在读取路径名时,会发现路径名中间部分会被/fakepath/代替。如选择的C:/Documents and Settings/Shirley/桌面/dyangquan.xml,读取得到的是C:/fakepath/dyangquan.xml.这于IE7.0,IE8.0有关。

解决方案:

用javascript读取(如服务器端也要用到,则用一个hidden文本进行存储)

    var isIE = (document.all) ? true : false;
    var isIE7 = isIE && (navigator.userAgent.indexOf('MSIE 7.0') != -1);
    var isIE8 = isIE && (navigator.userAgent.indexOf('MSIE 8.0') != -1);
    var isMozilla = /mozilla/.test( navigator.userAgent ) && !/(compatible|webkit)/.test( navigator.userAgent );
    var isOpera = /Opera/.test( navigator.userAgent );

//hidden文本

    var thehid=document.getElementById("hidthepath");
    if(isIE7 || isIE8){
       thehid.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='hid

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值