2010-06-22 121 views
1

var file_upload = document.getElementById('picture-upload').value;浏览器文件上传问题

代码在两个浏览器中返回不同的值。

在Firefox,即返回 'FILENAME.EXT' 例如:test.jpg放在

但在歌剧返回“FULLPATH \ FILENAME.EXT例如:C:\ fake_path \ test.jpg放在

是任一项知道问题

回答

1

IE6也会给你一个完整的路径,而较新的浏览器只给出文件名。这是为了安全。

我会检查名称中是否有反斜杠或正斜杠,如果存在,请删除路径。

if(/\\/.test(value)){ 
    value = value.split("\")[value.split("\").length-1]; 
}else 
if(/\//.test(value)){ 
    value = value.split("/")[value.split("/").length-1]; 
} 

(代码很可能被收紧)

+0

感谢。但是file_upload.replace(/^.*\\/,'')对我来说工作正常 – ArK 2010-06-24 05:00:12