在.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