2010-06-22 5 views
1

var file_upload = document.getElementById ('picture-upload'). 값;브라우저에서 파일 업로드 문제가 발생했습니다.

코드는 두 브라우저에서 다른 값을 반환합니다. C :

하지만 오페라 반환 'fullpath에의 \의 여기서 filename.ext 예에서

는 test.jpg를 : \ 어느 한 \ test.jpg를

가 fake_path 즉 반환'여기서 filename.ext '예를 들어 파이어 폭스에서

, 문제를 알고있다.

답변

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

관련 문제